$a='abc123efg';
我想替换为:
$a1='123efg';
$a2='abc';
怎么变成这样?

解决方案 »

  1.   

    我曾经想过,用preg_replace('/^[a-z].*?[0-9]/i','',$a)连数字的第一个位,也替换了
    得出结果是:23efg
    怎么才能只替换的数字前的英文?
      

  2.   


    $a='abc123efg';
    preg_match_all('/[a-z]+|\w+/i',$a,$s);
    print_r($s);这样子可以取得 但感觉不太对 
      

  3.   


    $a='abc123efg';
    echo preg_replace('/\b[^\d]+/','',$a);//print 123efg
      

  4.   

    $a='abc123efg456';
    如果我想得到
    $a='abcefg456';
    怎么搞?
      

  5.   

    规律就是 英文加数字再重复多次
    $a='abc123efg456hij';
    如果我想得到
    $a='abcefg456hij';
    怎么搞
      

  6.   

    $a='abc123efg';
    preg_match_all('/[a-z]+|\w+/i',$a,$s);
    print_r($s);