我尝试使用正则表达式来匹配除一个词之外的任何内容,该词是“/item/”。
([^/]+)
匹配任何内容 (true),但如果其中包含“/item/”这个词,我希望它为 false。
我必须做这样的事情吗?
([^/]+|!/item/)
管道是“或”,而 ! is 'is not',我写的这个例子绝对是错误的语法......我是正则表达式的新手。
更新:
这是一个活生生的例子:
^(category)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/?$
category/all-weather-wicker/bermuda/table/2977/应该通过
category/all-weather-wicker/bermuda/item/2977/应该失败
感谢您的帮助!
最佳答案
如果您的字符串始终保持一致,您可以在此处使用Negative Lookahead。
^(category)/([^/]+)/([^/]+)/((?:(?!\bitem\b).)+)/([^/]+)/?$
参见 live demo
关于javascript - 正则表达式,我怎么说,匹配除一个词以外的所有内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23500115/