在php中使用正则表达式从字符串中删除单词

时间:2012-09-14 06:31:49

标签: php regex split

我有以下方式的日期字符串:

输入

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

如何使用正则表达式从“GMT”开始删除最后一个单词。

输出:

Thu Jul 12 2012 11:03:36

5 个答案:

答案 0 :(得分:3)

$result = preg_replace('~\s+GMT.*$~', '', $date);

答案 1 :(得分:3)

试试这个

$newdate = preg_replace("/GMT(.*)/i", "", $date)

答案 2 :(得分:0)

试试这个,

$newdate = preg_replace('\sGMT(.*)', '', $date);

答案 3 :(得分: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

答案 4 :(得分:0)

一种方法是使用preg_replace并使用pattern30 Minute Regex Tutorial)。

<?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 

explode $string = explode('GMT', $string);