过滤中文和数字以外的字符,这是一个单位的名称只能有中文和数字!请问怎么写呀!网上实在找不到了,请各位指教一下!
先谢谢了!

解决方案 »

  1.   


    $pattern = "/^[\x80-\xff0-9]+$/";
    if(preg_match($pattern,"kddk")){
    echo "A match was found";
    }else{
    echo "A match was not found";
    }要看字符编码,上面是gbk编码的,UTF-8编码用\u4e00-\u9fa5 代替。
      

  2.   

    用\u4e00-\u9fa5会报错我才没用呀!报错如下:
    preg_match() [function.preg-match]: Compilation failed: PCRE does not support \L, \l, \N, \U, or \u at offset 3 in G:\psite\pat.php on line 4\x80-\xff0这个范围的内容,含有中文符号,可以输入中文的句号什么的,请你自己试试!谢谢!等更好的解答!
      

  3.   

    试一下这个:$pattern = "/^[\x80-\xA0\xAA-\xFF0-9]+$/";