2013-01-19 70 views
1

我需要在文本行中找到相似或精確的單詞。 e.g:正則表達式匹配或相似的單詞

我有以下模式: (Abarth|Alfa\s+Romeo|Aston\s+Martin|Audi|Austin)

和輸入字符串是:Alfa RomAlfa Romeo Contata 作爲結果應該是:Alfa Romeo越好。

我有超過100個品牌,我想在「自動完成」中使用它們。

如何用正則表達式來做這樣的搜索?

+1

請使用'可選部分可選' –

+0

@NaveedS遺憾沒明白你的問題?我想用它來「自動完成」。 – Mirodil

+0

這不是一個問題。我告訴你的是通過追加一個問號來使字符串中的可選部分變爲可選。 –

回答

1

問號使正則表達式中的前一個標記可選。例如:colou?r匹配colourcolor

您可以使用圓括號將它們組合在一起,並將問號放置在右括號之後,以製作多個令牌。例如:Nov(ember)?將匹配NovNovember

您可以編寫一個正則表達式,通過包含多個問號來匹配多個替代方案。 Feb(ruary)? 23(rd)?匹配February 23rdFebruary 23,Feb 23rdFeb 23

來源:http://www.regular-expressions.info/optional.html

+0

感謝您的回答,但我想用它來「自動完成」,並且我無法填充所有可能的組合 – Mirodil

+0

@Miro發佈您的自動完成代碼和您用於自動完成的文本。 – VladL