假如有字变量 $test = "[{a,1,2},{b,3,4},{c,5,6}...]",字符中类似这样格式的数据{a,1,2}说不定,也许1个,2个,3个或多个(至少有一个,多个的时候逗号隔开),怎么用正则匹配呢?多谢了:)

解决方案 »

  1.   

    怎么把字符串里a,1,2;b,3,4;c,5,6这些值匹配出来呢?
      

  2.   

    我自己试了下,不过只输出最后一个,例如下面代码匹配到{b,3,4},怎么改可以匹配全部呢(即{a,1,2}也可以获取到)?$test = "[{a,1,2},{b,3,4}]";
    preg_match('/\[({.*?},*)*\]/', $test, $testArr);
    var_dump($testArr);
      

  3.   

    preg_match_all('/({\w,\w,\w})/', $test, $testArr);
      

  4.   

    $test = "[{a,1,2},{b,3,4},{c,5,6}]";
    preg_match('/\[({.*?},*)*\]/', $test, $testArr);
    print $testArr[0];
    这个是全部能配出来啊