【正規表現】JavaScriptでの文字列の置換(replace)方法

PROGRAM

今回は、JavaScriptでの文字列の置換(replace)方法について、正規表現を使わない場合と使う場合に分け、簡単に解説していきます。

JavaScriptでの文字列の置換方法

JavaScriptで文字列の置換を行うには、文字列型のreplaceメソッドを使います。

var str = "山田様";
str = str.replace('様', '');
// strは"山田"となる。

上記のコードのように、replaceメソッドでは、第一引数に検索文字列を、第二引数に置換後文字列を指定します。

ただし、このreplaceメソッドでは、一度しか置換を行わないため、一致したものを全て置換したい場合は後述の正規表現を使って置換します。

JavaScriptでの正規表現による文字列の置換方法

replaceメソッドの検索文字列には正規表現も使うことができます。

var str = "山田 太郎、山田 花子";
str = str.replace("/( | )+/g","");
// strは"山田太郎、山田花子"となる。

上記のコードは、全角スペースと半角スペースを””に置換するコードです。

“g”というオプションを使うことによって、一致した検索文字列を全て置換することが可能です。

JavaScriptでの正規表現による入力文字列のチェック

正規表現は文字列の置換だけでなく、入力文字列のチェックにもよく使われます。

入力文字列のチェックには文字列型のmatchメソッドがよく使われ、このメソッドでは第一引数に検索文字列の正規表現を指定します。

if (str.match("/\d{10}/g")) {
    // 一致の場合
} else {
    // 不一致の場合
}

上記のコードでは、対象の文字列が固定電話番号のような半角数字連続10桁かどうかをチェックするコードで、matchメソッドで入力文字列のチェックを実装しています。