2

私は次のように日付文字列を持っています:

入力:

$date = "Thu Jul 12 2012 11:03:36 GMT 0";

正規表現を使用して「GMT」から始まる最後の単語を削除するにはどうすればよいですか。

出力:

Thu Jul 12 2012 11:03:36
4

5 に答える 5

4

これを試して

$newdate = preg_replace("/GMT(.*)/i", "", $date)
于 2012-09-14T06:34:43.050 に答える
3
$result = preg_replace('~\s+GMT.*$~', '', $date);
于 2012-09-14T06:33:20.307 に答える
0

これを試して、

$newdate = preg_replace('\sGMT(.*)', '', $date);
于 2012-09-14T06:39:38.280 に答える
0

DateTimeオブジェクトを使用する

$i = 'Thu Jul 12 2012 11:03:36 GMT 0';
$d = DateTime::createFromFormat('D M d Y H:i:s * *', $i);
echo $d->format('Y-m-d H:i:s'); # or whatever you need
于 2012-09-14T06:42:56.560 に答える
0

1つの方法は、(30分間の正規表現チュートリアル)を使用してpreg_replace使用するpatternことです

<?php
    $string = 'Thu Jul 12 2012 11:03:36 GMT 0';
    $pattern = '/GMT [0-9]*/';
    $replacement = ' ';
    echo preg_replace($pattern, $replacement, $string);
?>

出力

Thu Jul 12 2012 11:03:36 

または爆発する $string = explode('GMT', $string);

于 2012-09-14T06:47:33.177 に答える