'string001'
.s.replace(/[a-z,A-Z]/g, "")
'string2'
. const add = (str, val) =>
str.replace(/\d+$/, m => `${+m + val}`.padStart(m.length, 0));
add('string0001', 1) // 'string0002'
add('string1010', 99) // 'string1109'
add('string2345', 6789) // 'string9134'
string99 + 1
должно быть равно string00
, а не string100
), то после вызова padStart
добавьте .slice(-m.length)
. const myNumber = 30 // число, которое нужно прибавить
'string0001ddf'.replace(/\d+/g, num => {
const sum = num * 1 + myNumber; // 1 + 30
let zeroCount = num.length - sum.toString().length // Кол-во нулей вначале, исходя из полученного числа 0001
// Если длина строки суммы больше, чем исходное число
if(zeroCount < 0){
// то нули не добавляем
zeroCount = 0
}
return '0'.repeat(zeroCount) + sum;
})