①$number = 1234784;
正则匹配结果是:1234②$number = 389456723;
正则匹配结果是:4567正则数字

解决方案 »

  1.   

    看来是匹配连续4位的么,如果是,那无非是有数的几种情况:$s = 389456723;//连续4位
    $r = '(1234|2345|3456|4567|5678|6789)';
    preg_match_all('/'.$r.'/', $s, $m);print_r($m[0]);
    //连续3位以上
    $r = '(1234|2345|3456|4567|5678|6789|123|234|345|456|567|678|789)';
    preg_match_all('/'.$r.'/', $s, $m);print_r($m[0]);//2位以上的就不用示范了吧