我想:
第一个例子:
some_text_505
- > some_text_506
第二个例子:
sometext505
- > sometext506
答案 0 :(得分:4)
您可以执行以下操作,但是通过使用正则表达式,如果除了结尾之外的任何其他地方都有数字,它将无法正常工作
var myString = 'sometext506';
var myInt = parseInt(myString.replace(/\D/g,'')); // get rid of non numeric characters
var newString = myString.replace(myInt, '') + (myInt + 1);
console.log(newString)
更新
我刚刚发现这个功能似乎更整洁,并且也可以在字符串中间使用数字:
function getAndIncrementLastNumber(str) {
return str.replace(/\d+$/, function(s) {
return +s+1;
});
}
console.log(getAndIncrementLastNumber('sometext506'))
console.log(getAndIncrementLastNumber('some_text_506'))
console.log(getAndIncrementLastNumber('some2text508'))