我如何从jquery.autocomplete修改此替换/正则表达式,以便它只加粗第一个匹配?

时间:2009-02-10 07:01:13

标签: jquery regex jquery-plugins autocomplete

我不知道如何更改以下内容,以便只将<strong>放在与该术语匹配的第一个找到的字符串周围:

highlight: function(value, term) {
    return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\]){1}/gi, "\\$1") + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>");
}

这是来自jQuery自动完成插件:http://docs.jquery.com/Plugins/Autocompletehttp://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/

默认情况下,如果您在字段中键入“a”,则以下结果将显示为“ A pple A te A nts “我只想要” A pple Ate Ants“。

1 个答案:

答案 0 :(得分:2)

尝试将最后一个“gi”更改为“i”(“g”告诉它替换所有匹配项。)