JavaScriptにて正規表現を用いずに文字列の一括置換を行う方法
文字列の一括置換を行う際、PHPだとstr_replaceで問題無く対応できるがJavaScriptの場合は普通にreplaceを使っても最初に見つかった文字列のみ置換されてしまう。そのため正規表現を用いる必要があるがES2021で追加されたreplaceAllというメソッドで解決できるみたい。以下に使用方法をメモ。
使用方法
ソースコード
<script>
const price = '1,000,000';
//これだと最初のカンマのみ置換される
console.log(price.replace(',', '')); //1000,000
//従来の方法(正規表現)
console.log(price.replace(/,/g, '')); //1000000
//新しい方法
console.log(price.replaceAll(',', '')); //1000000
</script>
リファレンス
String.prototype.replaceAll()
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String/replaceAll
所感
未だに正規表現は苦手意識があるのでreplaceAllを知れたのは良かった。今後はこの方法を使っていきたいところ。
関連記事
-
-
jQuery UIを使って簡単にダイアログを表示させる方法
ブラウザ上でユーザーに対してちょっとした確認を行いたい場合はJavaScript ...
-
-
金融機関コード(銀行番号)や支店コード(支店番号)から銀行名や支店名を取得する方法
金融機関コード(銀行番号)や支店コード(支店番号)をから銀行名や支店名を取得した ...
-
-
Leafletにタグフィルター機能を実装できる「leaflet-tag-filter-button」プラグインの利用方法
以前にLeafletでマーカーをグループ化し、チェックボックスの状態により表示非 ...
-
-
八地方区分→都道府県→路線→駅名の連携したセレクトメニュー の実装方法
八地方区分(関東、近畿等)をプルダウンから選ぶと区分内の都道府県プルダウンが表示 ...
-
-
「slick」でarrows(次に進む・前に戻るボタン)を設定しても表示されない場合の対応方法
「slick」で画像スライダーを表示する際にarrows(次に進む・前に戻るボタ ...