Ajax和PHP正则表达式验证表单及验证码的示例分析
这篇文章主要为大家展示了"Ajax和PHP正则表达式验证表单及验证码的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Ajax和PHP正则表达式验证表单及验证码的示例分析"这篇文章吧。
模式匹配符:
\:转义字符 例如:\b转义了b
^:正则表达式开始符号
$:正则表达式结束符号
*:匹配前面的字符出现0次或者n次
+:匹配前面的字符出现1次或者n次
?:匹配前面的字符出现0次或者1次
.:匹配除了换行符以外的所有单个字符
|:或者的意思,例如x|y 匹配x或者y
{n}:匹配前面的n个字符
{n,m}:匹配至少n个最多m个前面字符
[xyz]:匹配中括号里的任意一个字符
[^xyz]:匹配除了中括号里的任意一个字符等价于[0-9]
\w:匹配任意一个数字或字母或下划线 等价于[A-Za-z0-9_]
\d:匹配任意一个0--9之间的数字
模式修正符:
i:忽略大小写
常用正则表达式举例:
//用户名由6-18位的字母数字下划线组成,不能由数字开头
var r_name=/^[a-z]\w{5,17}$/i
//密码长度不能少于六位
var r_pwd=/^\w{6,}$/
//所有的通用邮箱地址
var r_eamil=/^\w+@\w+(\.)\w+$/
//匹配一个QQ邮箱地址
//861745122@qq.com
var r_qq_email=/^\d{5,}@qq(\.)com$/
//匹配一个163的邮箱地址
var r_163_email=/^\w+@163(\.)com$/
//匹配一个后缀名可能是.com|.net|.cn|.edu
var email=/^\w+@\w+(\.)com|net|cn|edu$/
//要求输入有效的年龄段
var r_age=/^\d{1,2}$/
//if(age>=18&&age《=100)
//验证手机号:11位 13 15 18开头
var r_tel=/^1[3,5,8]\d{9}$/
//验证身份证号 18位或者17位加一个X
var r_s=/^\d{18}|\d{17}x$/i
//验证中文 var reg=/^[\u4e00-\u9fa5]{2,17}$/
//php
$reg = "/^[\x{4e00}-\x{9fa5}]$/u"
下面是一个例子:
php正则验证
string(9) "刘伟超" ["uqq"]=> string(10) "1111111111" ["uemail"]=> string(12) "66555@qq.com" ["utel"]=> string(11) "15863162320" ["uinfo"]=> string(48) "地方开始放假开放活动健康的话概括" } empty($_POST["uname"])?$uname="":$uname=$_POST["uname"]; empty($_POST["uemail"])?$uemail="":$uemail=$_POST["uemail"]; empty($_POST["utel"])?$utel="":$utel=$_POST["utel"]; empty($_POST["uqq"])?$uqq="":$uqq=$_POST["uqq"]; empty($_POST["uinfo"])?$uinfo="":$uinfo=$_POST["uinfo"]; //验证姓名 $reg="/^[\x{4e00}-\x{9fa5}]{2,3}$/u"; if(!preg_match($reg,$uname)){ echo "用户名应该2-3个汉字";die; //header("refresh:1;url=form.html"); } //验证邮箱 $reg="/^(\w+@\w+(\.)com|net|cn)$/"; if(!preg_match($reg,$uemail)){ echo "邮箱必须含有@,且以com结尾";header("refresh:1;url=form.html"); die; } //验证座机号 $reg="/^\d{11}$/"; if(!preg_match($reg,$utel)){ echo "座机号以010-22222222格式";header("refresh:1;url=form.html"); die; } //验证QQ号 $reg="/^\d{5,11}$/"; if(!preg_match($reg,$uqq)){ echo "qq必须是5-11位纯数字";header("refresh:1;url=form.html"); die; } //验证简介 /*$reg="/^[\x{4e00}-\x{9fa5}]{10,100}\W+/u"; if(!preg_match($reg,$uinfo)){ echo "简介应该10-100个汉字";die; //header("refresh:1;url=form.html"); } */ //连接数据库 $link=mysql_connect('127.0.0.1','root','root')or die("连接失败"); //选择数据库 mysql_select_db('kaoshi',$link); //设置字符集 mysql_query("set names utf8"); //写sql语句 $sql="insert into zhuce(c_name,c_qq,c_email,c_tel,c_info) values('$uname','$uqq','$uemail','$utel','$uinfo')"; //echo $sql;die; $rel=mysql_query($sql); if($rel){ echo "注册成功";header("refresh:1;url=show.php"); }else{echo "注册失败";header("refresh:1;url=form.html");} ?>
以上是"Ajax和PHP正则表达式验证表单及验证码的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!