如何拆分组合字符串


How to split combined string

我有一个字符串,看起来像这样:

21/04/2014,16:57:28,19,0,2021/04/2014,16:57:48,19,0,20

我想拆分它,以便得到如下所示的内容:

21/04/2014,16:57:28,19,0,20
21/04/2014,16:57:48,19,0,20

我尝试使用 php 的 substr,我认为它会给出结果,但它两次重复了这个"21/04/2014,16:57:48,19,0,20"。

$data3 = array(substr($data1, -27), substr($data1, 27));

甚至尝试了一个正则表达式,但没有运气。

如果要获取的零件长度恒定,则可以str_split函数与第二个参数一起使用。

$data = str_split($string, 27);

Elon Than的答案是完美的解决方案,如果正如他所说,长度是恒定的。但是,我只是想添加此解决方案,以防万一(例如)"19"也可以是"3"(或其他什么):

preg_match_all("/'d{2}'/'d{2}'/'d{4}','d{2}:'d{2}:'d{2},'d{1,2},'d{1},'d{2}/", $string, $matches);
var_dump($matches[0]);

请注意,'d{1,2}将包含 1 位或 2 位数字的任何数字。

$data3 = array(substr($data1, 0, 27), substr($data1, 27));