如题:
        $str = '2101;2102、2103; 2105;2106-2108.2111。2112';
        echo preg_replace('/\D/x',',',$str);
输出结果:
        2101,2102,,,2103,,,,2105,2106,2108,2111,,,2112

解决方案 »

  1.   

       $str = "2101;2102、2103; 2105;2106-2108.2111。2112";
        $pattern = '/(\d+?\d+)/';
        if(preg_match_all($pattern, $str, $match)){
    $str=implode(',',$match[0]);
            echo $str;
        }这样应该可以的