1. ホーム
  2. javascript

[解決済み] javascriptで、"/"を "シングルスラッシュ/"に置き換える。

2022-02-18 15:29:25

質問

javascriptの文字列の置換については多くの回答がありますが、 \/ から / への置換については回答が見当たりません。を押してください。

解決方法を教えてください。

なぜなら バックスラッシュはエスケープ文字として使用されます。 のように、エスケープする必要があります。

str = str.replace("\\/", "/");

上記で置き換えているのは \// . 一般に、文字列の中でバックスラッシュを使用する場合は、それをエスケープする必要があります。そこで /\/ を使うことになる。

str = str.replace("/\\", "/");

もちろん、これらは文字列の中の1つのインスタンスだけを置き換えます。複数のインスタンスを置き換えるには、正規表現で g (グローバル) 修飾子を使用します。

str = str.replace(/\\\/|\/\\/g, "/")

ここでは、スラッシュが正規表現の終端記号として意味を持つため、バックスラッシュだけでなく、スラッシュもエスケープする必要があるのです。別の方法として RegExp クラスがあります。

str = str.replace(new RegExp("\\\\/|/\\\\", "g"), "/")

これ の場合、バックスラッシュを2回エスケープする必要があります。1回は文字列で、もう1回は正規表現でエスケープします。( 以下は、より良い説明です。 .)