php页面现有
$text="户型为149-152㎡三房、182㎡四房,价格待定;现在售为4#楼高层,均价约6800元/㎡。";(元/㎡当成一整体,/可以不用去掉)
现要把其中所有的标点符号去掉,要输出 户型为149-152㎡三房182㎡四房价格待定现在售为4#楼高层均价约6800元/㎡
怎么实现呀,thanks

解决方案 »

  1.   

    如果确定有哪些标点的话,用str_replace就好了啊
      

  2.   

    str_replace 不太好,标点符号有20几点,
    能不能用正则 过滤掉呀,
      

  3.   

    <?php
    $text = "户型为149-152㎡三房、182㎡四房,价格待定;现在售为4#楼高层,均价约6800元/㎡。";
    $str = preg_replace('/[\x{2018}-\x{2026}\x{3000}-\x{301e}\x{fe50}-\x{ff1f}]/u','',$text);
    var_dump($str);
    ?>
      

  4.   

    我不知道你把什么当作标点符号
    给你代码自己找
    for($q=0xa1; $q<0xaa; $q++)
      for($w=0xa1; $w<0xff; $w++)
        printf("%02x, %02x: %c%c<br>", $q, $w, $q, $w);上述代码要在gbk环境中运行
      

  5.   

    utf都可以,根据 asc码就行了。
      

  6.   

    str_replace(array(',','。'.....),'',$string);正则 [[:punct:]] 可以匹配任何标点符号
      

  7.   

    or:$str = preg_replace('/\xa3([\xa1-\xfe])/e', '', $str); 
    echo $str; 
      

  8.   

    三个区域,不是6个,中间有“-”表示区域,比如a-z表示所有字母而不是a和z,你把你能想到的所有标点放进去测试一下就知道了。