好吧我知道一個正則表達式不是最好用的東西,但我相信除了編寫一個完整的解析器和語法檢查以外,它是最好的東西。儘可能多地匹配句子
我想寫一個正則表達式在一個特定的順序儘可能多的令牌儘可能匹配,並且還另寫正則表達式來在一個句子任意順序儘可能多的令牌儘可能匹配。
例如,我寫了一個正則表達式,如爲了匹配詞:
(?=.*?(I|need|your))(?=.*?(help|assistance|support|with|this|regex)).*?(?:\?)
和它匹配:
I think I need your help? I need your assistance with this regex? I don't want your support.
但問題是,它僅匹配「我「和」幫助「的第一句話。 在第二句中,它只匹配「我」和「幫助」。
我想弄清楚如何讓它儘可能多的關鍵字匹配,以便儘可能使:
「我」,「需要」,「幫助」的第一句話。 「I」,「需要」,「援助」,「有」,「這個」,「正則表達式」的第二句。
,但在同一時間,我不希望它匹配的是這樣的:
「需要」,「I」,「同」,「援助」,因爲它不是爲了。
有沒有一種方法可以做到這一點?我通常測試我的正則表達式:http://regex101.com/並使用g
作爲標誌,但我無法弄清楚如何編寫這樣的正則表達式。
我能來標記使用"\\b[A-Za-z0-9-_]+\\b"
句子。
任何提示?