「Test abc test test abc test test test abc test test abc」のような文字列を指定すると、最初に出現した次の文字列が置き換えられます。 string.replace('abc', '') を使用した「abc」では不十分です。この質問では、JavaScript で出現する文字列の すべて を置換する方法について説明します。
最新のソリューション (ECMAScript 2021 以降):
最新のブラウザーの場合ECMAScript 2021 仕様をサポートする場合は、String.replaceAll() メソッドを利用できます:
<code class="javascript">str = str.replaceAll('abc', '');</code>
レガシー ブラウザ ソリューション:
String.replaceAll() では、次のカスタム関数を使用できます:
<code class="javascript">function replaceAll(str, find, replace) { return str.replace(new RegExp(escapeRegExp(find), 'g'), replace); } function escapeRegExp(str) { return str.replace(/[.*+?^${}()|[\]\]/g, '\$&'); // $& means the whole matched string }</code>
このパターンは何度か改良され、最終的には上記の replaceAll() 関数になりました。これは、pre によって find パラメータの文字列引数に対応します。 -特殊文字をエスケープするためにそれらを処理します。
以上がJavaScript で出現するすべての文字列を置換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。