replace, отправить данные в функцию
Как отправить значения в функцию и так чтоб replace заменил текст на то что вернёт эта функция?
function func(var1, var2){
alert(var1);
alert(var2);
return 'На то что заменим';
};
':111:{222}'.replace(/\:(.*?)\:\{(.*?)\}/g, func("$1", "$2"));
|
В replace вторым параметром вы подставляете не функцию, а то что она возвращает, вам же нужно передать именно саму функцию, а не её результат, т.е.
':111:{222}'.replace(/\:(.*?)\:\{(.*?)\}/g, func);
http://javascript.ru/basic/regular-e...herez-funkciyu |
Только следует учесть, что первым аргументом функции будет передана вся совпавшая строка, а потом уже содержимое скобок.
|
| Часовой пояс GMT +3, время: 23:30. |