由于表述上有一定的困难,所以要做一些变通<?php
$str = "a3r=汉f字00";$p  = "/[0-9A-Za-z]|[\x80-\xff]./";
preg_match_all($p,$str,$regs);
if(join("",$regs[0]) != $str)
  echo "有非法字符";
else
  echo "正确";
?><script>
str = "a3r=汉f字00";
re = /[0-9A-Za-z]|[\x80-\xff]./g;
if(str.replace(/[^\x00-\xff]/g,"A").replace(re,"").length > 0)
  alert("有非法字符");
</script>

解决方案 »

  1.   

    呵呵,斑竹给了两种答案,谢谢拉
      

  2.   

    那你可以采用如果与特殊字符匹配就反回呀,把那些不能有的特殊字符列出来,放到正则或者一个字符串里面,然后进行比较不就可以了
      

  3.   

    版主的作法牛就一個字, 正則表達式真要好好學學.