谁能告诉我为什么常规 express 不能匹配“,2336”之后的“,2336”
短语:
ratio:71%
win:2336,2367,23363626,2336,2336
877
lose:2336
尝试过的模式:
(:|,)2336(,|\s|$)
(:|,)2336(,|\n|$)
(:|,)2336(,|\r|$)
(:|,)2336(,|[\n\r]|$)
http://regexr.com/3fgb7
最佳答案
您的问题是2336
的两个实例之间的逗号已被先前的匹配所占用,因此无法再次匹配,但是您的正则表达式要求这样做。
您可以通过将第二组更改为positive lookahead assertion来解决此问题。
(:|,)2336(?=[,\s]|$)