2013-01-19 107 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