簡體   English   中英

正則表達式,省略幾句話

[英]Regular expression, omit few words

我該如何寫一個正則表達式來匹配這樣的東西:

他不 能夠

等等

一般模式“他是” +最多幾個單詞+“的”

我知道如何不使用正則表達式來解決它,但是也許有更簡單的方法

一個簡單的解決方案是使用

\bhe is(?: \w+){1,3} of\b

它允許一個和三個“詞”之間he isof

\\w+意思是“字母/數字/下划線序列”,因此它與一個單詞不完全匹配,但是如果該單詞太不明確,則可以替換您自己的單詞匹配正則表達式。

\\b 詞邊界錨僅用於匹配heof ,而不匹配theoften

如果您真的想檢查是否有能力或沒有能力。

"he is\\s+(not\\s+)?(capable\\s+)?of"

我會這樣:

\bhe is\b.*\bof\b

我經常使用\\b來確保我匹配單詞。 例如,這與She is capable of不匹配, he isa wizard capable of也不he isa wizard capable of

這有點復雜:

\bhe is\b( +\w+ *)*\bof\b

在這里,中間有( +\\w+ *)* 這樣可以確保單詞彼此匹配。

您可以在此處進行演示。

暫無
暫無

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

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