我有一个看起来像这样的字符串“1-1-2012 Something,Something”
我如何包装日期部分,以便结果最终为<span>1-1-2012</span> Something, Something
由于
答案 0 :(得分:4)
您可以使用以下内容:
list($a,$b) = explode(" ",$input,2);
$out = "<span>".$a."</span> ".$b;
答案 1 :(得分:1)
你可以尝试
$str = "11-10-2012 Something, Something";
$str = preg_replace("/\d{1,2}-\d{1,2}-\d{4}/", '<span>$0</span>', $str);
var_dump($str);
输出
string '<span>4-10-2012</span> Something, Something' (length=43)
答案 2 :(得分:1)
preg_replace( '~\d{1,2}-\d{1,2}-\d{4}~', '<span>$0</span>', '1-1-2012 Something something' );
正则表达式~\d{1,2}-\d{1,2}-\d{4}
查找一个或两个整数,后跟-
,后跟另一个或两个整数,后跟-
,后跟4个整数,匹配“1-1-2012”和“05-10-2012”。然后它将匹配替换为<span>$0</span>
,其中$ 0将替换为找到的日期。
答案 3 :(得分:-1)
检查一下:
$str="1-1-2012 Something, Something";
$str=preg_replace('/\d-\d-\d{4}/', '<span>$0</span>', $str);
echo $str;
<强> UPD 强>
我错过了第一部分是日期:)
可以使用:
$str=preg_replace('/(:?\d{1,2}-){2}\d{4}/', '<span>$0</span>', $str);