JavaScript で文字列を置換するには replace 関数を使用しますが、実際に使用すると、この関数は最初に一致した文字のみを置換することがわかり、PHP 言語では非常に不便です。 。まさか、注意深く調査した結果、グローバルな一致と置換を実現する別の方法があることがわかりました。
(1) 実際、replace 自体でもこの機能を実現できますが、通常の形式でパラメータ g を追加する必要があります。例:
str.replace(/www.baidu.com/g,'www.jb51.net');
または:
str.replace(new RegExp('www.baidu.com','gm'),'www.jb51.net');
str 文字内のすべての www.baidu.com
を www.jb51.net に置き換えます。
(2) js 関数ライブラリを自分で拡張し、独自の関数 replaceall メソッドを作成して、グローバルな一致と置換を実現します。以下のように:
String.prototype.replaceall=function(s1,s2){
return this.replace(new RegExp(s1,"gm"),s2);
}
これも実際には方法 1 のアイデアを使用しています。例は次のとおりです (上記と同じ関数がここでも実装されていますが、方法 1 よりも直感的です)。
コードをコピーします
以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。