仅使用正则表达式就能在使用环视功能时跳过单词或字符吗?

时间:2018-10-11 19:57:41

标签: regex regex-lookarounds regex-group

我想这可能是对未来的负面展望。

如果我的句子形式为:

  

这是我想要和我想要的单词,这是我不想要的短语

有没有一种方法可以仅使用正则表达式来匹配“ WORD”,但只有在存在“ PHRASE”的情况下才可以?我最初的想法是否定先行,但这只是紧随其后的词。然后,我尝试使用(?:\w+(?:\s*[\,\-\'\:\/]\s*|\s+)){0,3}和其他类似的技巧,但这将匹配中间的单词而不是实际的短语。更不用说环顾四周+的浮华了。然后我考虑使用类似[^ something]的分组,但是我不知道如何使用完整的单词而不需要环顾四周。然后,我想到了嵌套环顾四周的想法,发现这种情况可能会发生,但这仍然使我找到了问题的根源。

您可以跳过匹配项中的单词以进行环顾吗?如果没有,我将如何解决该问题?

因为如果我使用后向嵌套,我仍然需要跳过一些东西才能找到WORD以匹配它。

假定单词在句子中是任意的,但关键字和关键短语是特定的。

1 个答案:

答案 0 :(得分:0)

如果我理解您的问题,可以尝试:

/(?!.*PHRASE I DONT WANT)WORD/

Demo