我有一个$text_arr="101104105106109111112113114116117120122123124"
相当大的字符串
如果我想从它们中拆分三个数字并将它们101,104,105
存储在 .$array
我该怎么办?
我试过这样做:
preg_match_all('/[0-9]{3}$/',"$text_arr",$array);
我有一个$text_arr="101104105106109111112113114116117120122123124"
相当大的字符串
如果我想从它们中拆分三个数字并将它们101,104,105
存储在 .$array
我该怎么办?
我试过这样做:
preg_match_all('/[0-9]{3}$/',"$text_arr",$array);
最简单的方法是使用preg_split()
Docs:
$result = preg_split('/(\d{3})/', $str, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
看到它工作,或结果:
Array
(
[0] => 101
[1] => 104
[2] => 105
[3] => 106
[4] => 109
[5] => 111
[6] => 112
[7] => 113
[8] => 114
[9] => 116
[10] => 117
[11] => 120
[12] => 122
[13] => 123
[14] => 124
)
尽管您可以为此使用正则表达式,但使用简单的标准函数可能会更高效:
$groups = str_split($numbers, 3);//returns array you want
选择这个最简单的代码
<?php
$string = "101104105106109111112113114116117120122123124";
$parts = str_split($string, 3);
$res=implode(',',$parts);
echo($res);
?>