関数 preg_replace

関数 preg_replace は、文字列内で正規表現に一致する部分を検索し、 指定された文字列で置換します。最初のパラメータは検索用の正規表現、 2番目は置換文字列、3番目は元の文字列を受け取ります。 さらに、置換の制限回数と置換回数をカウントするための変数を指定できます。

構文

phppreg_replace(pattern, replacement, subject, [limit], [count]);

例

文字列内のすべての数字を記号 'X' に置き換えます:

php<?php
  $str = 'a1b2c3';
  $res = preg_replace('/\d/', 'X', $str);
  echo $res;
?>

コード実行結果:

php'aXbXcX'

例

最初の 2 回の一致のみを置き換えます:

php<?php
  $str = 'a1b2c3';
  $res = preg_replace('/\d/', 'X', $str, 2);
  echo $res;
?>

コード実行結果:

php'aXbXc3'

例

置換での後方参照の使用:

php<?php
  $str = 'Hello World';
  $res = preg_replace('/(\w+)\s(\w+)/', '$2, $1', $str);
  echo $res;
?>

コード実行結果:

php'World, Hello'

例

実行された置換の回数をカウント:

php<?php
  $str = 'a1b2c3';
  $count = 0;
  $res = preg_replace('/\d/', 'X', $str, -1, $count);
  echo "Result: $res, Replacements: $count";
?>

コード実行結果:

php'Result: aXbXcX, Replacements: 3'

関連項目

  • 正規表現による検索を行う関数 preg_match,
  • 正規表現で文字列を分割する関数 preg_split,