phpでpreg_replaceによる正規表現使用時の注意点

作成日:2019/12/18
更新日:2019/12/18




正規表現置換時の注意点



phpで正規表現による置換を行う場合、preg_replace関数を使用する場合があります。そのときの注意点を記載します。

注意点



・表現の文字列は /〜〜〜〜〜〜〜/ のように/ / でくくる。

・エスケープは\を使用する。

・文字列が改行を含む場合、^は文字列の先頭を表し、$は文字列の最後を表す。改行直後の先頭は ^ でヒットしない点に注意。

・文字列はUTF-8で与える必要がある。
以下の例ではShift-JISでファイルから読み込み、正規表現置換を行い再度Shift-JISで保存するサンプル。
一度UFT-8に変換し、置換してから元に戻している。

例:

$contents = file_get_contents($file_name);

$contents = mb_convert_encoding($contents,"utf-8","auto");

$contents = preg_replace($str2,"",$contents);

$contents = mb_convert_encoding($contents,"sjis","auto");

$re = file_put_contents($file_name, $contents);



・単に文字列の置換は str_replace 関数を使用する。






キーワード:php

Windows トラブルシューティング一覧に戻る


(ご注意事項)本ページは2017年に独自に調査して記載した事項です。本ページには誤りがある可能性はあります。また今後仕様が変更となる可能性があります。
本ページにより発生したいかなる損失も誰も補償しません。あくまでも自己責任で参考にしてください。