Blogger Information
Blog 250
fans 3
comment 0
visits 321721
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
用正则表达式匹配用户信息
梁凯达的博客
Original
733 people have browsed it

写一个注册表单需要有帐号,密码,确认密码,邮箱,手机(中国大陆)
//  对帐号,密码,邮箱,手机使用正则表达式进行验证
//  验证规则:帐号 6 ~ 10位,只允许字母,数字,和下划线  其他字符都不允许出现  不能为空
//                  密码 6~ 18 位     不能为空
//                  手机必须为中国大陆手机   不能为空
//                  邮箱必须符合邮箱规则  不能为空
//                  密码与确认密码必须相同
//标准         以上所有验证都通过方可提示注册成功,有一项不通过都注册失败!
 //验证账户6 ~ 10位,只允许字母,数字,和下划线  其他字符都不允许出现  不能为空
 function name(){
  $str = '122122';
  $preg = '/\w{1,9}/';
  $result = preg_match($preg,$str,$arr);
  var_dump($arr);
  if($result&&strlen($str)<=9&&strlen($str)>=6){
   echo '当前注册的账户名为:'.$str.'<br />当前账户名验证规则'.$preg.'<br />';
   echo '验证结果为:<b style="color:red">恭喜通过了</b>';
  }else{
   echo '当前注册的账户名为:'.$str.'<br />当前账户名验证规则'.$preg.'<br />';
   echo '验证结果为:<b style="color:green">不符合要求</b>';
  }
 }
 name();

 function password(){
  $str = '12345';
  $preg = '/\w{1,9}/';
  $result = preg_match($preg,$str,$arr);
  var_dump($arr);
  if($result&&strlen($str)<=9&&strlen($str)>=6){
   echo '当前注册的账户名为:'.$str.'<br />当前账户名验证规则'.$preg.'<br />';
   echo '验证结果为:<b style="color:red">恭喜通过了</b>';
  }else{
   echo '当前注册的账户名为:'.$str.'<br />当前账户名验证规则'.$preg.'<br />';
   echo '验证结果为:<b style="color:green">不符合要求</b>';
  }
 }
 password();
 //手机号
 //11位数
 //第一个位数s必须是1开头
 //30-39 47 50-59 70-79 80-89 99 98
 function phone(){
  $str = '13536454104';
  $preg = '/1([3578]\d|47|99|98)\d{8}/';
  $result = preg_match($preg,$str,$arr);
  var_dump($arr);
  if($result&&strlen($str)==11){
   echo '当前注册的账户名为:'.$str.'<br />当前账户名验证规则'.$preg.'<br />';
   echo '验证结果为:<b style="color:red">恭喜通过了</b>';
  }else{
   echo '当前注册的账户名为:'.$str.'<br />当前账户名验证规则'.$preg.'<br />';
   echo '验证结果为:<b style="color:green">不符合要求</b>';
  }
 }
 phone();
// 邮箱首字符和末尾字符必须为字母或数字,邮箱名可以全是字母或数字,或者是两者的组合;
// 连字符"-"、下划线"_" 和英文句号点".",仅能放在字母或数字中间,且不能连续出现(即其单个符号的左右只能是字母或数字);
// 域名可以带连字符"-", 且可以是多级域名 ,还可以有多个域名后缀;
// 不区分大小写;
// 不限定邮箱字符串的具体长度。
 function email(){
  $str = '12345678@qq.com.cn';
  $preg = '/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/';
  $result = preg_match($preg,$str,$arr);
  var_dump($arr);
  if($result){
   echo '当前注册的账户名为:'.$str.'<br />当前账户名验证规则'.$preg.'<br />';
   echo '验证结果为:<b style="color:red">恭喜通过了</b>';
  }else{
   echo '当前注册的账户名为:'.$str.'<br />当前账户名验证规则'.$preg.'<br />';
   echo '验证结果为:<b style="color:green">不符合要求</b>';
  }
 }
 email();

 // 拆解
 ///^获取开头
 //[a-zA-Z0-9_.-]+ 大小写字母0-9允许下划线或.-,条件调用1到多次
 // @[a-zA-Z0-9-]+ 邮箱的@xx 其中xx运行一次或多次
 //(\.[a-zA-Z0-9-]+)* 邮箱的.cn之类的那一部分
 // \.[a-zA-Z0-9]{2,6}$/'; 邮箱的.cn后的二级域名部分

Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post