Javascript 如何添加计数器以显示找到的文本匹配数

Javascript 如何添加计数器以显示找到的文本匹配数,javascript,Javascript,如何在Javascript中编写一个计数器来显示找到或替换了多少文本匹配?我有点困了 var haystackText=”“; 功能findMyText(针,更换){ if(haystackText.length==0){ haystackText=document.getElementById(“haystack”).innerHTML; } var匹配=新的RegExp(指针,“ig”); var=”; 如果(替换长度>0){ 替换=文本。替换(匹配,替换); } 否则{ var bold

如何在Javascript中编写一个计数器来显示找到或替换了多少文本匹配?我有点困了

var haystackText=”“;
功能findMyText(针,更换){
if(haystackText.length==0){
haystackText=document.getElementById(“haystack”).innerHTML;
}
var匹配=新的RegExp(指针,“ig”);
var=”;
如果(替换长度>0){
替换=文本。替换(匹配,替换);
}
否则{
var boldText=“+指针+”;
替换=文本。替换(匹配,粗体文本);
}
document.getElementById(“haystack”).innerHTML=已替换;
}

知识产权是一种权利,是一种精英的权利,是劳动和财富的暂时性权利。但是,在最低限度上,我们需要一个实验室来进行日常工作。两人或两人在一个无教区的房间里互相指责。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。

发现 再植
► 运行代码段复制代码段以回答
,使用
匹配
查找搜索词
的已找到(和/或已替换)实例的长度

document.querySelector('input[type=button')).addEventListener('click',findMyText');
函数findMyText(e){
var针=document.querySelector(“#针”).value;
var replacement=document.querySelector(“#replacement”).value;
var haystackText=document.querySelector(“#haystack”).textContent;
var匹配=新的RegExp(指针“ig”);
var foundlen=(haystackText.match(match)| |[]).length;
//^使用匹配
var替换=“”;
如果(替换长度>0){
替换=文本。替换(匹配,替换);
}
否则{
var boldText=“+指针+”;
替换=文本。替换(匹配,粗体文本);
}
document.querySelector(“#haystack”).innerHTML=已替换;
document.querySelector(“#found”).textContent=
“[”+针+”]:“+foundlen+”已找到“;
}
#找到{颜色:红色;字体重量:粗体;}

知识产权是一种权利,是一种精英的权利,是劳动和财富的暂时性权利。但是,在最低限度上,我们需要一个实验室来进行日常工作。两人或两人在一个无教区的房间里互相指责。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。

发现 再植
尝试计算黄色div,我在该div中添加一个类,然后计算它 在这里工作:

var haystackText=”“;
var count=“”;
功能findMyText(针,更换){
if(haystackText.length==0){
haystackText=document.getElementById(“haystack”).innerHTML;
}
var匹配=新的RegExp(指针,“ig”);
var=”;
如果(替换长度>0){
替换=文本。替换(匹配,替换);
}
否则{
var boldText=“+指针+”;
替换=文本。替换(匹配,粗体文本);
}
document.getElementById(“haystack”).innerHTML=已替换;
var arr=document.getElementsByClassName(“计数”)
计数=arr.length
document.getElementById('founded').innerHTML=“针数+为:”+count;
//警报(计数);
}

知识产权是一种权利,是一种精英的权利,是劳动和财富的暂时性权利。但是,在最低限度上,我们需要一个实验室来进行日常工作。两人或两人在一个无教区的房间里互相指责。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。

发现 再植 ► 运行代码段复制代码段以进行应答
第二个参数String.replace()可以是函数。你可以用它来计算发生了多少次替换。有关更多信息,请参阅。欢迎,享受编码,并随时更新我的答案