当前位置:Gxlcms > PHP教程 > 请教php分割字符串

请教php分割字符串

时间:2021-07-01 10:21:17 帮助过:8人阅读

各位前辈好,

小弟遇到一个困难,

字符串:

[2015/07/07 00:00:00] test001 405433AH 127.0.0.1 Start
小弟想分割这字符串到array里
理想结果:
Array ( [0] =>[2015/07/07 00:00:00] [1] =>test001 [2]=>405433AH [3]=>127.0.0.1 [4]=>Start )

请问小弟该如何分割这字符串呢?
小弟试过用explode 但是分割不了。

请前辈赐教。
谢谢。


回复讨论(解决方案)

$s = '[2015/07/07 00:00:00]	test001	405433AH	127.0.0.1	Start';$a = sscanf($s, "[%s %8s]\t%s\t%s\t%s\t%s");print_r($a);
Array(    [0] => 2015/07/07    [1] => 00:00:00    [2] => test001    [3] => 405433AH    [4] => 127.0.0.1    [5] => Start)
不完全吻合,但也合情合理

非常感谢前辈,
请让小弟问下

%s 代表字符串
那么 %8s 是什么呢?

% 8s 表示取到 8 个字符就结束

使用explode都可以,但麻烦一点。

$str = '[2015/07/07 00:00:00]   test001 405433AH    127.0.0.1   Start';$arr = explode(' ', preg_replace('/[ ]{2,}/', ' ', $str));$arr[1] = $arr[0].' '.$arr[1];unset($arr[0]);$arr = array_values($arr);print_r($arr);



Array
(
[0] => [2015/07/07 00:00:00]
[1] => test001
[2] => 405433AH
[3] => 127.0.0.1
[4] => Start
)

谢谢两位前辈,

问题解决了。

人气教程排行