对于Java中的正则表达式,我想编写一个当且仅当模式前面没有某些字符时才匹配的正则表达式。例如:
String s = "foobar barbar beachbar crowbar bar ";
我想匹配如果bar
前面没有foo
。所以输出将是:
barbar
beachbar
crowbar
bar
你想使用negative lookbehind
像这样:
\w*(?<!foo)bar
Where (?<!x)
意思是“仅当它在此点之前没有“x”时”。
See 正则表达式 - 环顾四周 http://www.regular-expressions.info/lookaround.html了解更多信息。
Edit: 添加了\w*
捕捉之前的字符(例如“海滩”)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)