正規表現の特殊文字(ファイルパスなど)を含む可能性のある文字列fooがあるとします。
私は文字列xを持っています
x.replace(foo, 'bar');
しかし、fooを正規表現として解釈したくはありません。リテラル文字列fooを「bar」に置き換えたいだけです。
どうすればこれを達成できますか?
正規表現の特殊文字(ファイルパスなど)を含む可能性のある文字列fooがあるとします。
私は文字列xを持っています
x.replace(foo, 'bar');
しかし、fooを正規表現として解釈したくはありません。リテラル文字列fooを「bar」に置き換えたいだけです。
どうすればこれを達成できますか?
が文字列の場合foo
、正規表現として解釈されず、リテラル文字列 foo が に置き換えられるだけ'bar'
です。
"aaa /bbb/ ccc".replace("/bbb/", "eee")
戻ります"aaa eee ccc"
。
fooをリテラルとして取得する場合は、リテラル文字列として渡します。
str = x.replace('foo', 'bar');
または、例えば:
var path = "/bin/cat";
path = path.replace("/bin", "/usr/local/bin");
このreplace
メソッドは、正規表現またはリテラル文字列のいずれかを最初の引数として取ります。