У меня есть строка, что я пытаюсь манипулировать, используя регулярное выражение следующим образом:RegExp Exec - строка манипуляции
var str = 'This is a string with 1: {{param1}}, 2: {{param2}} and 3: {{param3}}',
reg = /{{.*?}}/ig;
while (field = reg.exec(str)) {
str = str.replace(field, 'test');
}
{{param2}}
никогда не заменяется, хотя - я думаю, потому что я манипулируя строку во время работы его через RegExp.exec(...)
. Но не может быть уверен.
Я попробовал следующее (как я заметил, RegExp.exec(...)
возвращает массив) - еще не повезло:
var str = 'This is a string with 1: {{param1}}, 2: {{param2}} and 3: {{param3}}',
reg = /{{.*?}}/ig;
while (field = reg.exec(str)) {
str = str.replace(field[0], 'test');
}
Любые идеи?
Edit: текущий результат этой функции:
'This is a string with 1: test, 2: {{param2}}, test and 3: test'
Вам нужно избежать этих фигурных скобок в вашем шаблоне регулярных выражений. –
Спасибо - не работает, я боюсь – keldar
Кроме того, 'i' здесь не имеет смысла. –