正则表达式-匹配某些单词,忽略同一行中的其他单词

时间:2018-11-27 21:03:49

标签: regex

我发现无数个“除示例外都匹配”,而不是我想要的。
不想匹配“任何” [x除外!]

我想匹配“这是一行”,但是如果存在字符串“ do not”,则不希望匹配。因此,仅B行应包含匹配项

(A) This is nonsense and none of this should match (B) This is a line and we want part of it to be matched (C) This is a line and we do not want anything to be matched (D) This is nonsense and none of this should match

有人可以解释如何执行此操作吗?捕获组绝对必要吗?我没有尝试捕获任何东西,但是如果需要的话,我一定会使用它。

我在https://regex101.com/上玩过,但是我什么都没走。非常感谢正则表达式退伍军人的协助。

1 个答案:

答案 0 :(得分:1)

使用否定的前瞻:

a(?!b)

这将匹配“ ax”或“ a”,但不匹配“ ab”

如果b(上面的示例)在a(上面的示例)之后,则负向超前会使子字符串不匹配