【发布时间】:2012-01-16 00:16:39
【问题描述】:
出现以下问题:替换按预期工作,但是:所有发现都替换为第一个发现。 (示例如下代码)。
target = 包含要突出显示的字符串的输入字段; newCityString = 需要替换的html代码
/**
* Highlighting for Search results (just demo)
* TODO: This needs some work to replace the case-correct texts
*/
search = new RegExp( $(target).val() , 'gi' );
matches = search.exec(newCityString);
for( match in matches ) {
_this = new RegExp( matches[ match ], 'gi');
newCityString = newCityString.replace(
_this,
('<span class="hl" style="background-color:yellow">' + matches[ match ] + '</span>')
);
};
示例:
“寻觅佳鱼”搜索“fin”将是“寻觅寻觅佳鱼”。
这意味着:在某些情况下,大小写是错误的。哪里错了?
【问题讨论】:
标签: javascript jquery html regex