只匹配英文,数字
preg_match('/[a-zA-Z\d]/',$str);

解决方案 »

  1.   

    if(preg_match("/[^0-9a-zA-z]/",$text))
      echo "含有非法字符";
      

  2.   

    楼上几位~~~
    不可以啊~~
    preg_match('/[a-zA-Z\d]/',$str)
    preg_match("/[^0-9a-zA-z]/",$text)
    这两种方法,如果是数字和英文的组合,就不能通过这个验证啊!
      

  3.   

    唠叨的方法可以<?phpfunction tf($str)
    {
    echo '<br>';
    return preg_match('/[^0-9a-zA-z]/',$str) ? "非法": "合法";}echo tf('test');
    echo tf('1234');
    echo tf('test1234');
    echo tf('1234test');
    echo tf('t1e2s3t4');
    echo tf('test测试');?>输出合法
    合法
    合法
    合法
    合法
    非法
    ----------------------
    http://www.phpe.net/downloads/22.shtml有下载"这方面的资料"