ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript で出現するすべての文字列を置換するにはどうすればよいですか?

JavaScript で出現するすべての文字列を置換するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-25 08:13:03819ブラウズ

How to Replace All Occurrences of a String in JavaScript?

JavaScript の文字列のすべてのインスタンスを置き換える

「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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。