如何在 javascript 正则表达式替换中粘贴计数器?
对于 Perl/PCRE,这个问题在这里得到了回答。
我已经尝试了明显的string.replace(/from/g, "to "+(++count))
,这不好(似乎在 string.replace 的开头评估了 ++count 一次)。
如何在 javascript 正则表达式替换中粘贴计数器?
对于 Perl/PCRE,这个问题在这里得到了回答。
我已经尝试了明显的string.replace(/from/g, "to "+(++count))
,这不好(似乎在 string.replace 的开头评估了 ++count 一次)。
您可以将每个匹配调用的函数传递给替换:
// callback takes the match as the first parameter and then any groups as
// additional, left it empty because I'm not using them in the function.
string.replace(/from/g, function() {
return "to " + (++count);
});
我发现这是一个非常方便的工具,可以在客户端替换复杂的字符串部分(如用户注释与嵌入代码),以减轻服务器的负担。
使用回调可能有效:
var i = 0;
string.replace(/from/g, function(x){return "to " + i++;})
干杯。