ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript の「Replace」関数でグローバル置換を有効にする方法
JavaScript の "replace" 関数: グローバル置換を理解する
JavaScript の "replace" 関数を利用して文字列を変更すると、驚くべき発見があるかもしれません。デフォルトでは、指定された部分文字列の最初のインスタンスのみが置換されるということです。この動作は、文字「g」で示される「グローバル」フラグがないことで説明できます。
次の例を考えてみましょう。
var date = $('#Date').val(); // Retrieves the value from a textbox, e.g. "12/31/2009" var id = 'c_' + date.replace("/", ''); // Attempts to remove all slashes from the date
結果の文字列「」 c_1231/2009」は、最初に出現したスラッシュ文字のみが置換され、2 番目のスラッシュはそのまま残っていることを示しています。
この問題を修正するには、正規表現に「g」フラグを含める必要があります。
date.replace(new RegExp("/", "g"), '') // Uses a regular expression to find and replace all slashes in the date // or date.replace(/\//g, '') // A shorthand notation for the above regular expression
「g」フラグを設定すると、JavaScript の「replace」関数は入力文字列を反復処理し、指定された部分文字列が出現するたびに置換し、すべてのインスタンスが期待どおりに変更されるようにします。
以上がJavaScript の「Replace」関数でグローバル置換を有効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。