вставить в .replace значение переменной?
Нужно удалить из строки все повторяющиеся символы, но символ этот заранее неизвестен, он приходит в переменной.
допустим, чтобы все удалить "а" из строки str, я бы написал alert(str.replace(/a/g,"");) а как написать то же, но для случая если удаляемый символ находится в переменной someVar?.. |
var myvar = "a"; ....replace(myvar, ""); |
var myvar = "a"; alert( str.replace( new RegExp( myvar, "g" ), "" ) ); |
Цитата:
|
только сначала надо проэкранировать спецсимволы
https://github.com/nin-jin/PMS/blob/...BRegExp.jam.js |
Цитата:
var x = '\w.a'.replace( /(?=.)/g, '\\' ); var z = new RegExp( x, 'g' ); alert( '1\w.a1'.replace( z, '' ) ); |
а как можно запихнуть переменную в регулярное выражение
/var/? |
Цитата:
var x = 't.a'.replace( /(?=.)/g, '\\' ); var z = new RegExp( x, 'g' ); alert( '1t.a1'.replace( z, '' ) ); |
Ну дык экранировать нужно не все просто:
var x = 't.\\a'; var z = new RegExp( x.replace( /(?=\W)/g, '\\' ), 'g' ); alert( '1t.\\a1-1t.\\a1-1t.\\a1'.replace( z, '' ) ); |
tenshi, devote, спасибо :)
|
Часовой пояс GMT +3, время: 00:23. |