日付を正規表現で置換する!
2010-08-01
データベースに日付を記録する時は、検索の時のことや、日付比較がしやすいように、2010-07-30のような形式でデータが入っていると思うけど、これを表示する時は、「2010年07月30日」と表示したい場合は、正規表現を使った置換を行えばOK!
$data="2010-07-30";
$data=ereg_replace("([0-9]{4})-([0-9]{2})-([0-9]{2})","\\1年\\2月\\3日",$data);
print $data;
出力結果 / 2010年07月30日
置換といえば、str_replace を使いますが、正規表現でマッチするところを置換したい場合は、$data=ereg_replace("([0-9]{4})-([0-9]{2})-([0-9]{2})","\\1年\\2月\\3日",$data);
print $data;
出力結果 / 2010年07月30日
ereg_replaceを使うといいようです。
$data="2010-07-30";
$data=ereg_replace("([0-9]{4})-([0-9]{2})-([0-9]{2})",'\1年\2月\3日',$data);
print $data;
出力結果 / 2010年07月30日
"(ダブルクォーテーション)ではなくて、'(シングルクォーテーション)であれば、$data=ereg_replace("([0-9]{4})-([0-9]{2})-([0-9]{2})",'\1年\2月\3日',$data);
print $data;
出力結果 / 2010年07月30日
\\1年\\2月\\3日ではなくて、\1年\2月\3日としてもいいです。
ぶっちゃげ正規表現は、あんまり得意ではないので、あーだこーだー参考を見ながら、自分なりに動くまで書いたので、もっといい表現があるかもしれません。
この記事が参考になったら、投票お願いします。 | 投票 |
