簡體   English   中英

正則表達式匹配單詞,但如果某個短語不匹配

[英]regex to match words but not if a certain phrase

在 python 中,我想匹配包含兩個術語的 substring,其間最多有一定數量的單詞,但當它等於某個 substring 時則不匹配。

我有這個正則表達式(regex101) ,它完成了工作的第一部分,匹配兩個術語,其間最多有一定數量的單詞。

但是我想用 AND 運算符添加一個部分或條件排除一個特定的句子,比如“我很有趣的話”

 my(?:\s+\w+){0,2}\s+words

此輸入的預期結果:

I'm searching for my whatever funny words inside this text

應該與我的任何有趣的話相匹配

而對於這個輸入:

I'm searching for my very funny words inside this text

不應該有匹配

謝謝大家幫忙

您可以使用以下正則表達式模式:

my(?! very funny)(?:\s+\w+){0,2}\s+words

這會在您現有的模式中插入一個否定的前瞻(?! very funny)以排除您不想要的匹配項。 這是一個工作演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM