我想匹配啓動任何字/兩端或不包含與「結束」這個詞,但忽略詞「結束」,例如:正則表達式 - 匹配任何字,但忽略特定的單詞
- 你好 - 將匹配
- 男友 - 將匹配
- 無盡 - 將匹配
- endend - 將匹配
但
- 結束 - 將不比賽
我使用^(?!end)).*$
但它不是我想要的。
對不起,我的英語
我想匹配啓動任何字/兩端或不包含與「結束」這個詞,但忽略詞「結束」,例如:正則表達式 - 匹配任何字,但忽略特定的單詞
但
我使用^(?!end)).*$
但它不是我想要的。
對不起,我的英語
所以你想匹配任何單詞,但不是「結束」?
除非我的誤解,一個條件語句是需要的一切......在僞代碼:
if (word != "end") {
// Match
}
如果你想匹配的文本未「結束」的所有單詞您可以刪除所有非alpha字符,用空字符串替換(^end | end | end$)
,然後執行字符串拆分。 其他答案與單個正則表達式可能會更好,因爲regex matches are O(n),無論是模式。
您可以使用此\b(?!(?:end\b))[\w]+
組件: \b
- >每個字的字邊界開始。 (?!
消極向前消除單詞結束。 (?:end\b)
非捕獲帶有單詞結束和單詞邊界的括號。 )
負向預覽的結束標記。 [\w]+
捕捉單詞的字符類。
說明:正則表達式搜索將僅查找以字邊界開始的位置,並將僅刪除與結尾相匹配的唯一字。即[WORD BOUNDARY]end[END OF WORD BOUNDARY]
。 \w
將捕獲其餘的單詞。如果您希望捕獲一些特殊字符(如$
等),則可以繼續增加此字符類。
等待。你只是想排除'end'這個詞本身?所有其他的應該匹配? –
是的,先生,這可能嗎? – moebarox