こんにちは!
今回は「変数を使用してreplace()で文字列を全て置換する方法」についてお伝えしたいと思います。
全置換するには正規表現を使う必要があるのですが、その記述方法が分からなかったので記事にしました。
replace()で変数を使うためには正規表現を使う
以下で具体例を用いて説明します。
やりたいこと
'before'という文字列を'after'に変換したい
初めに一致した1件だけでなく、全置換したい
before、afterは変数で動的に変更したい
// 変換対象の文字列
const str = 'before_test_before';
// 変換前の文字列
const beforeStr = 'before';
// 変換後の文字列
const afterStr = 'after';
// 正規表現のクラス定義
const regexp = new RegExp(beforeStr, 'g'); // /before/gと同じ
// 変換処理
const replacedStr = str.replace(regexp, afterStr); // before→afterに全て置換する
console.log(replacedStr); // 出力:after_test_after
このように記述することで、部品として使い回すことができると思います。
以上、お疲れさまでした🍵