文字列内のすべてのxを置き換えることはわかっていますstr.replace(/x/g, "y")
が、これをやりたいのです
function name(str,replaceWhat,replaceTo){
str.replace(/replaceWhat/g,replaceTo);
}
最初の引数で変数を使用するにはどうすればよいですか?
ベストアンサー1
コンストラクRegExp
ターは文字列を受け取り、そこから正規表現を作成します。
function name(str,replaceWhat,replaceTo){
var re = new RegExp(replaceWhat, 'g');
return str.replace(re,replaceTo);
}
replaceWhat
正規表現で特別な文字が含まれている可能性がある場合は、次のようにします。
function name(str,replaceWhat,replaceTo){
replaceWhat = replaceWhat.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
var re = new RegExp(replaceWhat, 'g');
return str.replace(re,replaceTo);
}