2013-10-04 4 views
1

Я использую .replace(/([0-9])/, '$1' + 1); для строки для замены числа на номер + 1, но не работает, я знаю, что это строка и целое число, но как это сделать в JS?JavaScript Заменить с помощью инкремента

+0

, который будет оценивать как '.Привернуть (/ ([0-9]) /, '$ 11'),' что, вероятно, не то, что вы хотите, вам нужно будет использовать функцию для выполнения замены, после которой вы будете. – zzzzBov

ответ

4

Вы не можете выполнить математику внутри заменяющей строки.

Вместо этого вам нужно передать функцию обратного вызова:

.replace(/0-9/, function(m) { return parseInt(m, 10) + 1; }) 
+3

'/ \ d /' будет еще более кратким, не уверен, что OP захочет также флаг 'g'. – zzzzBov

Смежные вопросы