ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript で特定の文字列のすべてのインスタンスを置換するにはどうすればよいですか?

JavaScript で特定の文字列のすべてのインスタンスを置換するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-10-24 14:30:02
オリジナル
857 人が閲覧しました

How to Replace All Instances of a Specific String in JavaScript?

JavaScript で出現する文字列をすべて置換する方法

問題:

JavaScript の組み込み replace( ) メソッドを使用して部分文字列を置換すると、次の例に示すように、最初に出現した部分のみが置換されます:

<code class="javascript">var string = "Test abc test test abc test test test abc test test abc";
string = string.replace('abc', ''); // Only replaces the first 'abc' occurrence</code>
ログイン後にコピー

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

解決策:

String.replaceAll() の使用

最新のブラウザ:

最新のブラウザは String.replaceAll() メソッドをサポートしています。出現するすべての部分文字列を指定された置換で置き換えます:

<code class="javascript">string = string.replaceAll('abc', ''); // Replaces all 'abc' occurrences</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, '\$&');
}</code>
ログイン後にコピー

使用法:

<code class="javascript">console.log(replaceAll(string, 'abc', '')); // Replaces all 'abc' occurrences</code>
ログイン後にコピー

注:

  • escapeRegExp() 関数は、検索文字列内の特殊文字をエスケープして、正確な一致を保証します。
  • 正規表現内の g フラグにより​​、出現したすべての文字が置換されます。

以上がJavaScript で特定の文字列のすべてのインスタンスを置換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート