0

我用 Javascript 编写了一个函数,它使用文本突出显示单词。大约需要 20 行代码。

highlight(text, pattern)

这是:http: //jsfiddle.net/sR5wM/1/

任何人都可以编写一个可以更有效地执行相同操作的正则表达式吗?highlight 函数必须不区分大小写,并且忽略变音符号。

例如:

highlight("Être ou ne pas être, là est la question", "etre la")

会产生:

Être ou ne pas être , est la question

4

2 回答 2

0

最好的方法是由Alex K.IMO 提供,我建议你也看看UNICODE基于正则表达式。

下面的正则表达式可能没有优化和接近您的期望,但会完全满足您的需求,或者至少会给您一个入门。

试试这个正则表达式:

([\u00C8-\u00CB]tre)|(l[\u00E0-\u00E5\u0061])

现场演示

请注意不区分大小写的复选框。

不要忘记从列表中查看等效的 unicode。

于 2013-06-19T18:44:44.357 回答
-2

我不记得它在 javascript 中的确切语法,但它会类似于

for(var input : inputs){
    string.regexReplace("("+input+")","<b>\1<\b>")
}
于 2013-06-19T16:56:47.053 回答