Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Регулярные выражения


Автор: ОнКофе 14.9.2008, 18:44
вопрос по регулярным выражениям

var str="a b c d e g d f"
document.write(str.replace(/\sd\s/g, "_"));

есть ли возможность подставлять в регулярное выражение переменную?
мне необходимо сделать что-то в этом роде:

test('d');

function test(ReNameX){
 var str="a b c d e g d f";
 document.write(str.replace(/\s'+ReNameX+'\s/g, "_"));
}

это конечно не работает, и не пойму можно ли вообще сделать что-то подобное, для того чтобы была возможность изменять эту переменную при вызове функции?

Автор: SelenIT 15.9.2008, 06:04
Юзайте конструктор RegExp:[code=javascript]
str.replace(new RegExp('\\s'+ReNameX+'\\s','g'), "_")

Автор: ОнКофе 15.9.2008, 13:57
SelenIT, большое спасибо! Все оказалось на самом деле очень просто, однако без вас пришлось бы писать тучу ненужного кода!


P.S. я не понимаю что такое "флеймовый раздел", поэтому плюс поставлю, спасибо за понимание! ))

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)