|你好|我好|他好|
请把这个字符串以|*|分成一个数组
我写的不知道为什么获取不到
$str="|你好|我好|他好|";
preg_match('/|.*|/',$str,$arr);
print_r($arr);

解决方案 »

  1.   

    或者有其它方法也可以 不要用explode函数
      

  2.   


    $str = "|你好|我好|他好|";
    echo str_replace('|','|*|',$str);
      

  3.   


    $str="|你好|我好|他好|";
    preg_match_all('/[^|]+/', $str, $matches);
    print_r($matches[0]);
    /**
    输出结果:
    Array ( [0] => 你好 [1] => 我好 [2] => 他好 ) 
    PS:不知是不是你所说的要求
    */
      

  4.   

    转义
    preg_match('/\|.*\|/',$str,$arr);
      

  5.   


    不对,输出的还是原样Array ( [0] => |你好|我好|他好| ) 
      

  6.   


    不行:$str="|你好|我好|他好|";preg_match('/\|.*\|/U',$str,$arr);
    print_r($arr);输出是
    Array ( [0] => |你好| ) 
      

  7.   

    就用四楼的就好。或者这样: 
    $str="|你好|我好|他好|";
    print_r(preg_split('/\|/',$str,-1,PREG_SPLIT_NO_EMPTY));