我想知道如何使用preg_match_all来分隔这个字符串
2:18 textextextextextext,sdfdsfd:,fdg
所以它会返回一个如下所示的数组:
array(
0 => 2
1 => 18
2 => textextextextextext,sdfdsfd:,fdg
)
基本上删除第一个冒号
答案 0 :(得分:2)
您可以使用格式化字符串:
print_r(sscanf("2:18 textextextextextext,sdfdsfd:,fdg", "%d:%d %s"));
答案 1 :(得分:1)
首先,您要使用的是preg_match()
而不是preg_match_all()
(根据您所需的输出)。
然后您可以使用正则表达式:
(\d+):(\d+)\s*(.*)
使用preg_match()
的PHP中的内容如下所示:
$pattern = "/(\d+):(\d+)\s*(.*)/";
$string = "2:18 textextextextextext,sdfdsfd:,fdg";
preg_match($pattern, $string, $matches);
执行print_r($matches)
会输出:
Array
(
[0] => 2:18 textextextextextext,sdfdsfd:,fdg
[1] => 2
[2] => 18
[3] => textextextextextext,sdfdsfd:,fdg
)