为了匹配不在另一个特定单词之后的特定单词,我应该使用什么正则表达式模式?
例如:
我正在寻找不在“xyz”之后的“abc”,因此以下内容将匹配:
xxabc
p abc
以下不会:
xyz abc
谢谢!
为了匹配不在另一个特定单词之后的特定单词,我应该使用什么正则表达式模式?
例如:
我正在寻找不在“xyz”之后的“abc”,因此以下内容将匹配:
xxabc
p abc
以下不会:
xyz abc
谢谢!
最简单的方法是否定的lookbehind断言:
(?<!xyz)(?<!xyz )abc
但是,您在字母组之间的间距变化表明您可能会看到abc
和之间的距离有所变化xyz
。如果您只想找到 abc之前在字符串中从未出现过 xyz 的情况,那么您可能需要更多类似以下内容的内容:
^(?!xyz)*((?!xyz).)*abc
后一个正则表达式使用反向匹配的等价物,而不是否定的后向断言。