我需要搜索并替换字符串中的数字。但是有两点需要注意。
首先,我需要在更换前进行算术运算。因此,如果我向他们添加5,则搜索6将替换为11,7与12等等
其次,我只会做一个后面跟冒号的数字。因此'7:'将成为'12:','8:'将成为'13:',但只有'9'没有冒号将保持不变。
这是我尝试过的东西
var string = "89 12 13: 42:";
var regex = new RegExp('[0-9]+','g');
string = string.replace(regex + ':',(regex + 5) + ':');
完成后应该看起来像“89 12 18:47:”。加号5意味着我正在尝试将5添加到替换之前出现的数字。
谢谢,
答案 0 :(得分:0)
你很亲密;但是你没有扫描:
,而你却错过了.replace
的功能。
test = "I like 55: 12: 9: yay";
test = test.replace(/[0-9]+:/g, function (a) {
return Number(a.slice(0,-1)) + 5 + ":";
});
console.log(test);