例如hello和你好。。
如何精确识别这个字符(词)为纯中文还是纯英文?

解决方案 »

  1.   

    <script type="text/javascript">
    alert(encodeURI("a"))   ;
    alert(encodeURI("嘟嘟嘟嘟的"))   ;
    </script>
    结果不带%的就是英文
      

  2.   

    $s='hello和你好';
    echo preg_match('/^[\x{4e00}-\x{9fa5}]+$/u',$s) ? '纯中文' : '非纯中文'; 
    echo '<br>'; 
    echo preg_match('/^[a-z]+$/i',$s) ? '纯英文' : '非纯英文';
      

  3.   

    if (!preg_match('/[^A-Za-z]/', $string))
    {
      //纯英文
    }
    if (!preg_match('/\p{Han}+/u', $string)&&!preg_match('/[_a-zA-Z0-9]+$/', $string))
    {
      //纯汉字
    }
      

  4.   

    我也喜欢\p
    而\x或者\u的话还要记着字符区间是多少
    楼主可以好好看看正则表达式,就会自己解决类似问题了