-2

我想要一个可以用特定规则替换大字符串中的子字符串的函数。

例如,我希望pageX字符串中的每个数字都增加 10。

function replace(str, increment){}

replace("pageX : 100, pageY: 200,......pageX : 120...", 10)

会得到"pageX : 110, pageY: 200,......pageX : 130..."

我知道 like string.replace(/pageX :/g,someStr)can do replaceAll,但没有规则可以应用。我怎么能得到那个?

4

2 回答 2

1

如何使用replace函数回调:

var string = "pageX : 100, pageY: 200,......pageX : 120...";
string = string.replace(/(\d+)/g, function(match, contents) {
    return (+contents + 10);
});
console.log(string);

演示:http: //jsfiddle.net/ytptN/

于 2012-05-11T09:38:37.980 回答
0

使用带有模式的正则表达式\d+来匹配所有数字,并使用String.replace函数调用生成替换的能力。乘以(或以其他方式)修改匹配的数字并将它们放回去。

于 2012-05-11T09:38:25.737 回答