2012-04-04 111 views
1

我想匹配的路径,比如在网页URL没有域名,或Linux目录,东西/像/这个东西/和/允许破折号正则表达式的路径名

所以在另一个词,允许的字符是数字,字母,短划线和斜杠。 第一个和最后一个字符不能是短划线或斜线。

尽我所能得到的是这个

^[a-z0-9]+[a-z0-9(\/)(-)]*[a-z0-9]+$ 

,但它不能在

a/b-c/d 
+0

'^ [a-z0-9] + [a-z0-9/- ] * [a-z0-9] + $'为什么要在短括号内加短划线? – turbanoff 2012-04-04 03:27:37

+0

你也可以使用'^ \ w [\ w \/\ - ] * \ w $'。当然这也意味着你的路径必须至少有2个字符。 – gmalette 2012-04-04 03:32:04

+0

不允许在开始或结束时出现正斜杠对我来说似乎很奇怪,因为前者总是有效的,后者如果你是路径,则是目录。 – 2012-04-04 03:40:52

回答

2

你需要逃避你 - 为好。请尝试以下内容

^[a-z0-9]+[a-z0-9(\/)(\-)]*[a-z0-9]+$