Несколько замен в строке
Приветствую всех!
Как выполнить несколько замен в строке? Мой пример, строка - "func1(a,b) func2(c,a,b)" замене подлежит подстрока - "a,b" (где a и b - вещественные числа) строка-заменитель - "x,y". |
fedushok,
alert("func1(a,b) func2(c,a,b)".replace(/a,b/g, "x,y")); |
Дело в том, что a и b - это вещественные числа, и чему они равны не известно.
|
Если всегда последние, то:
.replace(/-?\d+,-?\d+\)/g, "x,y") |
fedushok,
условия задачи не конкретные, ... !!! alert("func1(100,900) func2(c,5,1)".replace(/\d+,\d+/g, "x,y")); |
Благодарю. Как иногда полезно прибегать к помощи на форуме!
1. Сильно ли повлияет на производительность если я добавлю "просмотр вперёд" -.replace(/-?\d+,-?\d+(?=\))/g, "x,y");? Приведённый пример замещает последнюю скобку, чего быть не должно. Или сделать замену со скобкой позади - .replace(/-?\d+,-?\d+\)/g, "x,y)");? 2. Вам удалось выделить в моём примере частный случай решения задачи (за что еще раз благодарю), но душа просит что-то общее. Что если задней скобки не будет? Выражение "a,b" железно идет после "func1(". |
fedushok,
если a и b известны, сделайте из них new RegExp |
Цитата:
|
Цитата:
Цитата:
|
fedushok,
сколько func всего? |
Часовой пояс GMT +3, время: 05:10. |