php用户注册ID验证正则表达式

下面这个正则验证用户名的方法原则是这样的用户名必须是由字母带数字带定划线组成了,下面一起来看看例子吧.

1.检查用户名是否符合规定 两位以上的字母,数字,或者下划线,代码如下:

  1. /**
  2. * 检查用户名是否符合规定
  3. *
  4. * @param STRING $username 要检查的用户名
  5. * @return TRUE or FALSE
  6. */
  7. function is_username($username)
  8. {
  9. $strlen = strlen($username);
  10. if (!preg_match("/^[a-zA-Z0-9_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]+$/",
  11. $username)) //开源软件:phpfensi.com
  12. {
  13. return false;
  14. } elseif (20 < $strlen || $strlen < 2)
  15. {
  16. return false;
  17. }
  18. return true;
  19. }

两位以上的字母,数字,或者下划线^[a-zA-Z0-9_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]+$.

注:在这里,字母是 a-z,A-Z,以及从 127 到 255(0x7f-0xff)的 ASCII 字符

2、密码:6—20位,由字母、数字组成,代码如下:

  1. function isPWD($value,$minLen=5,$maxLen=16){
  2. $match='/^[\\~!@#$%^&*()-_=+|{}\[\],.?\/:;\'\"\d\w]{'.$minLen.','.$maxLen.'}$/';
  3. $v = trim($value);
  4. if(emptyempty($v))
  5. return false;
  6. return preg_match($match,$v);
  7. }

3、email验证,代码如下:

  1. function isEmail($value,$match='/^[\w\d]+[\w\d-.]*@[\w\d-.]+\.[\w\d]{2,10}$/i'){
  2. $v = trim($value);
  3. if(emptyempty($v))
  4. return false;
  5. return preg_match($match,$v);
  6. }

注意,把内容中的\替换成小写的\就可以正常使用了,因为本服务器自动过滤\所以本文替换成全角了.