使用正则表达式递增字符串的最后一位数字

时间:2014-12-01 06:10:27

标签: javascript regex string

如何使用正则表达式递增字符串的最后一位数,即44test122244test1223

我已经增加但是如何改变它。我在JavaScript代码中的正则表达式如下所示

var email='44test1222';
var number = email.match(/\d+$/);
number++;

1 个答案:

答案 0 :(得分:5)

使用String.prototype.replace替换功能。使用匹配的字符串调用该函数,并将函数的返回值用作替换字符串。

var email='44test1222';
email.replace(/\d+$/, function(m) { return parseInt(m) + 1; })
// => "44test1223"

注意

上面的代码会增加最后一个数字,而不是最后一个数字。如果要增加最后一位数,则需要使用/\d$/作为模式,并且可能需要考虑应该对数字9执行的操作。