preg_match("/^[".chr(0xa1)."-".chr(0xfe)."]+$/", $str)
有的繁体能检测到大部分检测不到怎么解决?

解决方案 »

  1.   

    [\u4e00-\u9fa5] 判断中文
    ^[A-Za-z]+$   判断英文
    ------------------------------------------------------------------------------------------------
    http://www.jiemengwu.com/ 解梦屋 http://www.phpzy.com/php/ 绿色php资源http://www.shopfw.com网店服务
      

  2.   

    繁体有gbk和utg-8的(当然还有BIG5)
    gbk是单字节,utf-8是双字节用:preg_match("/^[\x7f-\xff]+$/", $str) 可以兼容gbk和utf-8
      

  3.   

    如果你的环境开户了mb_string支持,可以使用如下方法来判断是否为繁体字:if(mb_check_encoding('轉','gbk'))
    {
        echo '给定的字符串为繁体字';
    }
    PS: 注意字符串中如果有非繁体字,则判断为非繁体,完全可以实现判断是否为繁体字的功能