对于PHP
我有一个日期,我想要换行。
我有$ date ='2008-09-28 9:19 pm'; 我需要用br代替第一个空间 成为
2008-09-28<br>9:19 pm
如果它不是PM之前的第二个空格,我只是str_replace()它。
答案 0 :(得分:0)
s/ /<br\/>/
应该这样做。虽然PHP正则表达式可能会贪婪并替换所有空格。
我支持Ben Hoffstein的PHP解决方案。在可能的情况下,避免使用正则表达式,因为它几乎总是具有意想不到的副作用。
答案 1 :(得分:0)
$date = '2008-09-28 9:19 pm';
$result = preg_replace('/(\d{4}-\d{2}-\d{2}) (.*)/', '$1<br>$2', $date);
答案 2 :(得分:0)
$date = preg_replace('/ /', '<br>', $date, 1);
答案 3 :(得分:0)
如果您希望正则表达式匹配模式并返回两个部分,则可以使用以下内容。但是,考虑到您正在做的所有事情只是替换1个空格,请尝试在正则表达式后我建议的str_replace_once
。正则表达式用于复杂的解析而不是浪费使用,例如替换一个空格(没有违反意图)。
请注意,以下是浏览器代码,因此请勿尝试逐字使用。只是在输入错误的情况下。
$regex = '/([\d]{4}-[\d]{2}-[\d]{2}) ([\d]{1,2}:[\d]{2} (am|pm))/';
$match = preg_match($regex, '2008-09-28 9:19 pm');
print $match[1]; // Returns 2008-09-28
print $match[2]; // Returns 9:19 pm
// Or replace:
preg_replace($regex, '$1<br>$2', $date);
我建议以下,更快的机制。有关函数this post,请参阅str_replace_once()
。
str_replace_once(' ', '<br>', $date);
答案 4 :(得分:0)
另一种方法是
,这是更快但更多的代码$date = substr($date, 0, 10) . '<br>' . substr($date, 11);