Javascript 每次使用一个单词时计数并标记

Javascript 每次使用一个单词时计数并标记,javascript,html,Javascript,Html,我想在HTML页面的文本中查找并计算单词“Dog”,然后用前面的#更新单词: 原文:狗追赶猫。猫杀了狗。 修改:1只狗追赶猫。猫杀死了2只狗。 这是我目前为止没有用的: var str = 'Dog'; int count = 0; var regex; var regex = new RegExp(str, "g"); for (var i = 0, i < str.length; i++) { counter = count++; document.body.innerHT

我想在HTML页面的文本中查找并计算单词“Dog”,然后用前面的#更新单词:

原文:
狗追赶猫。猫杀了狗。

修改:
1只狗追赶猫。猫杀死了2只狗。

这是我目前为止没有用的:

var str = 'Dog';  
int count = 0;
var regex;
var regex = new RegExp(str, "g");
for (var i = 0, i < str.length; i++) {
  counter = count++;
  document.body.innerHTML = document.body.innerHTML.replace(regex, counter + "Dog");
}
var str='Dog';
整数计数=0;
var regex;
var regex=新的RegExp(str,“g”);
对于(变量i=0,i
对代码进行一点小小的更改将使您找到一个可行的解决方案(我认为),但不是很好的解决方案:

var count = 0;
document.body.innerHTML = document.body.innerHTML.replace(regex,
  function(match) {
    return ++count + match;
  }
);
请注意,您不需要循环:
replace
将为您执行循环,只要您具有
/g
标志


这样做的一个问题是,您可能会更改不应该更改的内容,例如元素名称、属性名称和值、javascript代码或样式规则。一个更好(但有些复杂)的解决方案是在DOM中递归查找文本节点,并对其内容执行替换。

对代码进行一点小小的更改就可以找到一个可行的(我认为)但不是很好的解决方案:

var count = 0;
document.body.innerHTML = document.body.innerHTML.replace(regex,
  function(match) {
    return ++count + match;
  }
);
请注意,您不需要循环:
replace
将为您执行循环,只要您具有
/g
标志


这样做的一个问题是,您可能会更改不应该更改的内容,例如元素名称、属性名称和值、javascript代码或样式规则。一个更好(但有些复杂)的解决方案是在DOM中递归查找文本节点,并对其内容执行替换。

对代码进行一点小小的更改就可以找到一个可行的(我认为)但不是很好的解决方案:

var count = 0;
document.body.innerHTML = document.body.innerHTML.replace(regex,
  function(match) {
    return ++count + match;
  }
);
请注意,您不需要循环:
replace
将为您执行循环,只要您具有
/g
标志


这样做的一个问题是,您可能会更改不应该更改的内容,例如元素名称、属性名称和值、javascript代码或样式规则。一个更好(但有些复杂)的解决方案是在DOM中递归查找文本节点,并对其内容执行替换。

对代码进行一点小小的更改就可以找到一个可行的(我认为)但不是很好的解决方案:

var count = 0;
document.body.innerHTML = document.body.innerHTML.replace(regex,
  function(match) {
    return ++count + match;
  }
);
请注意,您不需要循环:
replace
将为您执行循环,只要您具有
/g
标志


这样做的一个问题是,您可能会更改不应该更改的内容,例如元素名称、属性名称和值、javascript代码或样式规则。一个更好(但有点复杂)的解决方案是通过DOM递归查找文本节点,并对其内容执行替换。

您可以使用Replace函数执行此操作:

var t="The dog chased the cat. The cat killed the dog. so why the dog is eating a dog ?"

i=1;
t=t.replace(/(dog)/ig, function replacer(match, p1) 
  {
   return (i++)+p1;
  });

console.log(t)
结果:

狗追赶猫。那只猫杀死了那只狗。那么为什么3dog是 吃一只4磅重的


(编辑为基于1的计数)

您可以使用替换功能执行此操作:

var t="The dog chased the cat. The cat killed the dog. so why the dog is eating a dog ?"

i=1;
t=t.replace(/(dog)/ig, function replacer(match, p1) 
  {
   return (i++)+p1;
  });

console.log(t)
结果:

狗追赶猫。那只猫杀死了那只狗。那么为什么3dog是 吃一只4磅重的


(编辑为基于1的计数)

您可以使用替换功能执行此操作:

var t="The dog chased the cat. The cat killed the dog. so why the dog is eating a dog ?"

i=1;
t=t.replace(/(dog)/ig, function replacer(match, p1) 
  {
   return (i++)+p1;
  });

console.log(t)
结果:

狗追赶猫。那只猫杀死了那只狗。那么为什么3dog是 吃一只4磅重的


(编辑为基于1的计数)

您可以使用替换功能执行此操作:

var t="The dog chased the cat. The cat killed the dog. so why the dog is eating a dog ?"

i=1;
t=t.replace(/(dog)/ig, function replacer(match, p1) 
  {
   return (i++)+p1;
  });

console.log(t)
结果:

狗追赶猫。那只猫杀死了那只狗。那么为什么3dog是 吃一只4磅重的


(编辑为基于1的计数)

您应该像这样使用
replace
功能:

var text = "The dog chased the cat. The cat killed the dog.";
var count = 0;
text.replace(/dog/g,function($0){
    count += 1;
    return count+$0;
})

您应该像这样使用
replace
功能:

var text = "The dog chased the cat. The cat killed the dog.";
var count = 0;
text.replace(/dog/g,function($0){
    count += 1;
    return count+$0;
})

您应该像这样使用
replace
功能:

var text = "The dog chased the cat. The cat killed the dog.";
var count = 0;
text.replace(/dog/g,function($0){
    count += 1;
    return count+$0;
})

您应该像这样使用
replace
功能:

var text = "The dog chased the cat. The cat killed the dog.";
var count = 0;
text.replace(/dog/g,function($0){
    count += 1;
    return count+$0;
})

什么是
int count
?另外,输入错误:
(var i=0,
)。什么是
?是的,我意识到我不知道发生了什么-需要有人帮我指出正确的方向什么是
int count
?另外,输入错误:
(var i=0,
。什么是
?是的,我意识到我不知道发生了什么-需要有人帮我指出正确的方向
整数计数是什么?
?还有,输入错误:
(var i=0,
。什么是
?是的,我意识到我不知道发生了什么-需要有人帮我指出正确的方向
整数计数是什么?
?还有,输入错误:
(var i=0,
。什么是
?是的,我意识到我不知道发生了什么-需要有人帮我指出正确的方向谢谢Royi,但是我如何才能在网页(如document.body.innerHTML)上打开“var t”来查找特定的“dog”?谢谢Royi,但是我如何打开“var t”来查找特定的“dog”在网页上(比如document.body.innerHTML)?谢谢Royi,但是我怎么能在网页上(比如document.body.innerHTML)打开“var t”来查找特定的“dog”?谢谢Royi,但是我怎么能在网页上(比如document.body.innerHTML)打开“var t”来查找特定的“dog”?