人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

[正規表現+php]
preg_replace を用いて、
05/8/2(火) 16:52

2005-08-02 16:52:00
このように変換したいです!

よろしくお願いいたします!

●質問者: akame23
●カテゴリ:ウェブ制作
✍キーワード:00 PHP 正規表現
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● JULY
●50ポイント

http://jp2.php.net/manual/ja/pcre.pattern.syntax.php

<?php

$string = ”05/08/02(火) 16:52”;

$pattern = ”/(¥d{2})¥/(¥d{2})¥/(¥d{2})¥(.*¥) (¥d{2}):(¥d{2})/”;

$replacement = ”20¥${1}-¥${2}-¥${3} ¥${4}:¥${5}:00”;

echo preg_replace($pattern, $replacement, $string);

?>


ただし、この場合、元の文字列に含まれる日時の数字が、2桁になっていることが前提です。

上記例のように、1桁の数字の場合に頭に 0 をつけるとなると、preg_replace による変換では

無理だと思います。preg_grep で各要素を抜き出した上で、sprintf で文字列を組み立てる、

といったことが必要だと思います。

◎質問者からの返答

ご回答ありがとうございます!

前提2桁でのテストに成功しました。

ご指摘の内容で、1桁問題に取り組んでみたいと思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ