function incrementString (strng) {
var reg = /[0-9]/g;
var srrt = strng.split(reg);
var num = strng.replace(srrt[0],"");
var length = num.length;
num = +num+1;
var tnum = num.toString();
var tt = tnum.padStart(length, '0');
//num=num+1;
var odin = srrt[0];
var task = odin+tt;
return task;
}
'лалала001' => 'лалала', '001' // разбить на две части
length = '001'.lentgh // запомнить длину второй строки
'001' => 1, // привести вторую строку к чсилу
1++ => 2 // инкрементировать число
2 => '2' // привести к строке
'2'.padStart(length, '0') => '002' // дополнить слева нулями
'лалала' + '002' => 'лалала002' // соединить строки
function stringInc(s) {
var pos = s.length - 1;
while(pos >= 0) {
if( Math.abs(s.charCodeAt(pos) - 52.5) < 5) pos--;
else break;
}
if( ++pos >= s.length) return s; // no number
var numLength = s.length - pos;
var numString = (parseInt(s.substr(pos)) + 1).toString();
if( numString.length < numLength) {
numString = ((Array(1 + numLength).join('0')) + numString).substr(-numLength);
}
return s.substr(0,pos) + numString;
}
stringInc('abc123') // abc124
stringInc('abc999') // abc1000
stringInc('abc00009') // abc00010
stringInc('009') // 010
stringInc('9') // 10
stringInc('aaa') // aaa
var _string = "лалала0002"
var _increment = 1
//
var _array = _string.split(/(\d+)/).filter(Boolean)
var _length = _array[1].length
var _number = parseInt(_array[1], 10)
function padLeft(number, n){
return Array(n - String(number).length + 1).join('0') + number;
}
console.log(_array[0] + padLeft(_number + _increment, _length));