我有以下字符串:|Africa||Africans||African Society||Go Africa Go||Mafricano||Go Mafricano Go||West Africa|
。正則表達式匹配(Javascript)
我想寫只匹配項包含單詞Africa
或其任何deriative(所不同的是|Mafricano|
和|Go Mafricano Go|
含義是所有條款正則表達式,每學期在兩個|
之間封閉。
現在我已經出來:/\|[^\|]*africa[^\|]*\|/gi
,它說:
\|
比賽|
[^\|]*
匹配零到任意字符的無限實例除了|
africa
字面上匹配africa
[^\|]*
匹配零到任意字符的無限實例除了|
\|
匹配|
我試過插入((?:\s)|(?!\w))
使其成爲/\|[^\|]*((?:\s)|(?!\w))africa[^\|]*\|/gi
。雖然它排除了|Mafricano|
和|Go Mafricano Go|
,但它也排除除|West Africa|
和|Go Africa Go|
之外的所有其他條目。所以這很好,但它也需要包括所有單個單詞Africa
及其派生形式。
任何人都可以幫助我嗎?
你爲什麼不使用'replace'?它應該更容易。 – Kai 2014-10-18 08:33:48
@JhKaiz,@AvinashRaj:我需要一個所有匹配項的數組,因此我將使用'match()'函數 – AKG 2014-10-18 08:36:21