用javascript中递增的数字替换HTML文本
我有一堆没有HTML的文本,我正试图用用javascript中递增的数字替换HTML文本,javascript,replace,Javascript,Replace,我有一堆没有HTML的文本,我正试图用String替换String的所有实例 问题是我试图每次递增x,以获得一组唯一可识别的跨度,而不是相同的跨度。 我获取字符串的所有实例都没有问题,但就我的一生而言,我无法让增量工作。我能找到的所有帮助似乎都指向了相反的方向。 你知道我能做什么,或者到哪里寻求帮助吗 编辑: 这是针对ID为“result”且仅包含文本的div var target = "String"; var X = //the number I was trying to
String
替换String
的所有实例问题是我试图每次递增x,以获得一组唯一可识别的跨度,而不是相同的跨度。
我获取字符串的所有实例都没有问题,但就我的一生而言,我无法让增量工作。我能找到的所有帮助似乎都指向了相反的方向。
你知道我能做什么,或者到哪里寻求帮助吗 编辑:
这是针对ID为“result”且仅包含文本的div
var target = "String";
var X = //the number I was trying to increment
var re = new RegExp(" " + target + " ","g");
document.getElementById('result').innerHTML = document.getElementById('result').innerHTML.replace(re, '<span id="' + X + '">' + target + '</span>');
var target=“String”;
var X=//我试图增加的数字
var re=新的RegExp(“+target+”,“g”);
document.getElementById('result').innerHTML=document.getElementById('result').innerHTML.replace(re',+target+'');
我猜您使用的是正则表达式,这很好,但是您可以指定一个函数作为第二个参数来替换,并在那里执行您的逻辑
执行此操作的MDN文档如下所示-
您可以使用以下内容:
函数替换器(源、目标){
var x=0;
var re=新的RegExp(目标,“g”);
var ret=原始替换(re),功能(匹配){
返回“+匹配+”;
});
返回ret;
}
var example=“String Stringasdf String2344 String”;
var replaced=replacer(例如,“字符串”);
控制台日志(已替换);
如果希望计数从
0
开始,而不是从1
开始,可以将++x
更改为x++
,我猜您使用的是正则表达式,这很好,但是您可以指定一个函数作为替换的第二个参数,并在那里执行逻辑
执行此操作的MDN文档如下所示-
您可以使用以下内容:
函数替换器(源、目标){
var x=0;
var re=新的RegExp(目标,“g”);
var ret=原始替换(re),功能(匹配){
返回“+匹配+”;
});
返回ret;
}
var example=“String Stringasdf String2344 String”;
var replaced=replacer(例如,“字符串”);
控制台日志(已替换);
如果希望计数从0开始,而不是从1开始,则可以将++x
更改为x++
,参考
您可以将函数传递给字符串。replace
方法允许您在每次调用时增加一个计数器,并使用该计数器设置您的ID:
var forReplacements = "I do like a String that's a nice long String with Strings in it";
var incrementer = (function() {
var counter = -1;
var fn = function(match) {
counter++;
return "<span id='"+counter+"'>"+match+"</span>";
};
fn.reset = function() {
counter = -1;
}
return fn;
}());
var newString = forReplacements.replace(/String/g, incrementer )
var forReplacements=“我喜欢一个长字符串,里面有字符串”;
var incrementer=(函数(){
var计数器=-1;
变量fn=功能(匹配){
计数器++;
返回“+匹配+”;
};
fn.reset=函数(){
计数器=-1;
}
返回fn;
}());
var newString=forReplacements.replace(/String/g,incrementer)
请参阅,以查看它的实际操作
您可以将函数传递给字符串。replace
方法允许您在每次调用时增加一个计数器,并使用该计数器设置您的ID:
var forReplacements = "I do like a String that's a nice long String with Strings in it";
var incrementer = (function() {
var counter = -1;
var fn = function(match) {
counter++;
return "<span id='"+counter+"'>"+match+"</span>";
};
fn.reset = function() {
counter = -1;
}
return fn;
}());
var newString = forReplacements.replace(/String/g, incrementer )
var forReplacements=“我喜欢一个长字符串,里面有字符串”;
var incrementer=(函数(){
var计数器=-1;
变量fn=功能(匹配){
计数器++;
返回“+匹配+”;
};
fn.reset=函数(){
计数器=-1;
}
返回fn;
}());
var newString=forReplacements.replace(/String/g,incrementer)
查看以查看它的运行情况显示您的代码。你的问题毫无意义。给我们看看你的代码。你的问题毫无意义。