Javascript 每次使用一个单词时计数并标记
我想在HTML页面的文本中查找并计算单词“Dog”,然后用前面的#更新单词: 原文: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
狗追赶猫。猫杀了狗。
修改:
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”?