假设我们有一个简单的算法来突出显示搜索结果:
var patt = new RegExp(result+"(?=\\s|\\.|,|<)(?! type=| class=| id=| src=)","gi");
var highlighted = unhighlighted.replace(patt,"<span style='border:1px solid #3399FF;'>"+result+"</span>" )
这有效,但我如何转移文本的大小写。我可以参考匹配的单词或短语吗?
答案 0 :(得分:0)
您必须使用捕获组和反向引用来实现此目的。这可以像tihs
那样完成var patt = new RegExp("(" + result + ")" +"(?=\\s|\\.|,|<)(?! type=| class=| id=| src=)","gi");
var highlighted = unhighlighted.replace(patt,"<span style='border:1px solid #3399FF;'>$1</span>");
答案 1 :(得分:0)
得到它 - 和Yadala一样,但$ 1在字符串中:
var patt = new RegExp("(" + result + ")" +"(?=\\s|\\.|,|<)(?! type=| class=| id=| src=)","gi");
var highlighted = unhighlighted.replace(patt,"<span style='border:1px solid #3399FF;'>$1</span>");