如何通过正则表达式将String拆分为数组

时间:2012-03-29 09:53:34

标签: php regex

我有一个以下类型的字符串。

  

[test1,3,(257305435900)]

现在我想将此字符串拆分为数组单元格。喜欢这个

term => 'test1', 
num => 3,
info => array{ [0]=> 275, [1]=> 435, [2]=> 900 }

任何人都可以知道这个字符串的正则表达式模式....提前感谢。

1 个答案:

答案 0 :(得分:4)

您可能想要使用preg_match_all

$string = "[test1,3,(257,305,435,900)]";

preg_match_all('/\[(?P<term>\w+),(?P<num>\d+),\((?P<info>[\d,]+)\)\]/', $string, $out);

$results = array (
   'term' => $out['term'][0],
   'num'  => $out['num'][0],
   'info' => explode(',', $out['info'][0])
);

var_dump($results);