正規表現の置換の方法
正規表現で使われる目的の1つに「パターンにマッチした文字や文字列を別の文字に置換する」があります。今回は、いくつかの置換についてPHP言語を用いて紹介します。プログラミング言語によって、書き方やメソッド名などが違ってきますが、正規表現の書き方は同じなので、他言語を使っている方は、その辺りを変更して応用してみてください。
置換の一般的な書き方
一般的な書き方は、以下のようになります。
新しい変数 = 正規表現置換メソッド名(正規表現パターン, 置換文字, 置換対象文字列)
PHPで置換のコード例を以下に示します。
$originalStr = ‘私の年齢は40歳です。’;
$newStr = preg_replace(‘/(私の年齢は)40/‘, ‘$1 24’, $originalStr);
echo $newStr;
これを実行すると、
私の年齢は24歳です。
と出力されます。「私の年齢は」を検索し、存在する場合に40を24に変換します。$1は()で囲んだ文字列=”私の年齢は”を指します。
大文字小文字を区別しないで検索・置換
PHPで大文字と小文字を区別せずに置換させるには、str_ireplaceメソッドを使用します。
コードの例を下記に示します。
$originalStr = ‘RED GREEN BLUE’;
$newStr = str_ireplace(‘green’, ‘white’, $originalStr);
echo $newStr;
これを実行すると、
RED white BLUE
と書き換わります。検索したい文字 “green”が小文字ですが、大文字のGREENとマッチし、置換できる事がわかります。
まとめ
正規表現による置換の例を紹介してみました。今回は、非常にシンプルなパターンのものを紹介しましが、このように単純なパターンから学んで、より複雑なパターンを書けるようになると良いでしょう。