preg_replace空格后的所有破折号 2013-12-12 12-00-00 至 2013-12-12 12:00


preg_replace all dashes after space 2013-12-12 12-00-00 to 2013-12-12 12:00:00

正则表达式对我来说一直是一门火箭科学。谁能告诉我如何写preg_replace转换 2013-12-12 12-00-00 到 2013-12-12 12:00:00.我试过使用

preg_replace("/-(?='s)/", ":", $string)

我知道这是不正确的,因为它没有给出所需的输出。

只需查找一个空格,后跟用连字符分隔的三对数字,然后用另一个空格和三对用冒号分隔符替换:

$datetime = preg_replace('/ ('d'd)-('d'd)-('d'd)$/'," $1:$2:$3",$datetime);