JavaScript的查找字符串名称 [英] JavaScript find names in strings
本文介绍了JavaScript的查找字符串名称的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
什么是一个很好的JavaScript库,用于搜索特定字符串名称的大名单。
例如,鉴于1000政治家名称的列表中找到一个字符串,每一个实例,并把它包在范围
。
重点是确定的,例如,布莱尔,布莱尔III的区别有名字的越来越多的性能和准确性。
例如,这样的:
[布莱尔,撒切尔夫人,托尼Blairite,布莱尔III,等...]
布莱尔后,下午最好是撒切尔夫人。
变成了:
的最佳点以后<跨度类=MP>托尼·布莱尔和LT; / SPAN>是<跨度类=MP>撒切尔夫人< / SPAN> 。
解决方案
VAR名称= ['富','酒吧'];
VAR内容=此foo是吧foobar的富;
为(变种C = 0,L = names.length; C< L,C ++){
变种R =新的RegExp(\\ B(+名字[C] +)\\ B,GI);
内容= content.replace(R,'<跨度类=MP> $ 1 LT; / SPAN>');
}
What's a good JavaScript library for searching a given string for a large list of names.
For example, given a list of 1000 politicians names find every instance in a string and wrap it in a span
.
Priorities are performance with a growing list of names, and accuracy in determining difference between eg, "Tony Blair", "Tony Blair III".
For example, this:
["Tony Blair", "Margaret Thatcher", "Tony Blairite", "Tony Blair III", etc...]
"The best PM after Tony Blair was Margaret Thatcher."
Becomes:
"The best PM after <span class="mp">Tony Blair</span> was <span class="mp">Margaret Thatcher</span>."
解决方案
var names = ['foo','bar'];
var content = "this foo is bar foobar foo ";
for (var c=0,l=names.length;c<l;c++) {
var r = new RegExp("\\b("+names[c]+")\\b","gi");
content = content.replace(r,'<span class="mp">$1</span>');
}
这篇关于JavaScript的查找字符串名称的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文