注意 Perl互換の正規表現構文を使用する preg_replace() は、しばしば ereg_replace() よりも速い代替関数です。
この関数は、
string
をスキャンして
pattern
にマッチするものを探し、 マッチしたテキストを
replacement
で置換します。
置換後の文字列が返されます。(マッチしなかった場合は、 元の文字列が返されます。)
pattern
の中に括弧でくくられた部分 文字列が含まれている場合、
replacement
の中に
\\
数字
のような部分文字列を埋め込むこともできます。この部分は、 「数字」番目の括弧でくくられた部分文字列にマッチする文字列
に置き換えられます。また、
\\0
は文字列全体 を指します。9個までの部分文字列を使うことができます。括弧は 入れ子になっていても構いません。この場合は開き括弧
'(' が 最大9個まで使用可能です。
string
においてマッチするものがなかった 場合、
string
は変更されずに返されます。
たとえば、以下のサンプルコードは"This was a test" と3回表示します。
注意しなければならないのは、パラメータ
replacement
として整数値を使用する場合、 期待する結果が得られない可能性があります。これは、
ereg_replace()
が文字の値を数値として解釈し、 使用するためです。例えば、次のようになります。
ereg()
,
eregi()
,
eregi_replace()
,
str_replace()
,
preg_match()
も参照下さい。