2011年4月11日月曜日

phpで正規表現作業まとめ

今回ereg_replace()でDeprecated: Function ereg_replace() is deprecatedの
 のエラーが多発、調べてみるとphp5.3 以降regex 拡張モジュールは非推奨となります的
なエラーでした。

 解決策としてpreg_replace()を使用し解決しましたので、その時の作業内容をまとめます。

① aタグの削除
$削除パターン  = "/((<a.*>)(.*)(<\/a>))/";
preg_replace($削除パターン,"","$text")
となります。「/」はパターンの最初と最後に「/」がきます。
「\/a」の\はエスケープ文字です。

②日付の抽出
$抽出パターン = "((?:[0-9]{4})(?:[\/]?)(?:[0-9]{0,2})(?:[\/]?)(?:[0-9]{0,2}))"; 
preg_match_all($抽出パターン,"$text","$抽出された文字列");
「?:」はモシはればです。もう少しすっきり書く事ができるんですが今回はここまで、


0 件のコメント:

コメントを投稿