正则表达式无效量词 ^((?<!\/)\/[A-Za-z0-9_-]*)+$



我在这个正则表达式上得到一个无效的限定词JS错误。

^((?<!/)/[A-Za-z0-9_-]*)+$

我只是想匹配任何路径,并确保它有一个前导斜杠…

/home
/home/about/
/home/contact
等等…

问题是(?<!...): JavaScript不支持向后看。

我想你也不需要它了。

^(/[A-Za-z0-9_-]+)+/?$

应该也能工作(取决于你的确切规则)。

我刚刚测试了你的正则表达式,我似乎没有得到任何错误,虽然没有匹配(没有像Felix Kling所说的那样)。

但是我建议使用以下正则表达式:

^(?:/[a-z0-9_-]+)+/?$

JavaScript正则表达式不支持向后看。但是这里不需要:

/^(?:/[A-Za-z0-9_]+)+$/

应该做。

编辑本;如果后面的斜杠可以,则:

/^(?:/[A-Za-z0-9]+)+/?$/

相关内容

最新更新