加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

常用正则

发布时间:2020-12-13 19:38:50 所属栏目:百科 来源:网络整理
导读:?php/***1.正则匹配中文(UTF8)+英文+数字*符号、空格不能通过*/$str = "sd的123";if(preg_match("/^([x{4e00}-x{9fa5}]|[0-9a-zA-Z])+$/u",$str)){echo '通过';}else{echo '不通过';}/***2.验证m-n位的数字的PHP正则:^d{m,n}$*例:取6到12位数字*/$str =
<?php
/**
*	1.正则匹配中文(UTF8)+英文+数字
*	符号、空格不能通过
*/
$str = "sd的123";
if(preg_match("/^([x{4e00}-x{9fa5}]|[0-9a-zA-Z])+$/u",$str)){
	echo '通过';
}else{
	echo '不通过';
}
/**
*	2.验证m-n位的数字的PHP正则:^d{m,n}$
*	例:取6到12位数字
*/
$str = '12345678';
if(preg_match('/^d{6,12}$/i',$str)){
	echo '6到12位数字';
}else{
	echo '不是6到12位数字';
}
/**
*	3.常用数字正则
*	验证数字:					^[0-9]*$
*	验证n位的数字:				^d{n}$
*	验证至少n位数字:			^d{n,}$
*	验证m-n位数字:				^d{m,n}$
*	验证零和非零开头的数字:	^(0|[1-9][0-9]*)$
*	验证有两位小数的正实数:	^[0-9]+(.[0-9]{2})?$
*	验证有1-3位小数的正实数:	^[0-9]+(.[0-9]{1,3})?$
*	验证非零的正整数:			^+?[1-9][0-9]*$
*	验证非零的负整数:			^-?[1-9][0-9]*$
*	验证非负整数(正整数+0):	^d+$
*	验证费正整数(负整数+0):	^((-d+)|(0+))$
*	验证长度为3的字符:			^.{3}$
*	验证由26个英文字母组成的字符串:		^[A-Za-z]+$
*	验证由26个大写英文字母组成的字符串:	^[A-Z]+$
*	验证有26个小写英文字母组成的字符串:	^[a-z]+$
*	验证由数字和26个英文字母组成的字符串:	^[A-Za-z0-9]+$
*	验证由数字英文字母或下划线组成的字符串:^w+$
*	验证用户密码:				^[a-zA-Z]w{5,17}$=>字母开头,6-18位,只能包含字母、数字、下划线
*	验证时候含有^%&,;=?$等字符	[^%&,;=?$x22]+
*	验证汉字					^[u4e00-u9fa5],{0,}$
*	验证Email地址:				^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$
*	验证InternetURI				^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
*	验证电话号码:				^((d{3,4})|d{3,4}-)?d{7,8}$:--正确格式为:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX
*	验证身份证号(15或18位数字):^d{15}|d{18}$
*	验证一年的12个月:			^(0?[1-9]|1[0-2])$	正确格式:"01"-"09"和"1"-"12"
*	验证一个月的31天:			^((0?[1-9])|((1|2)[0-9])|30|31)$	正确格式:01-08和1,31
*	整数:						^-?d+$
*	非负浮点数(正浮点数+0):	^d+(.d+)?$
*	负浮点数					^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$
*	浮点数:					 ^(-?d+)(.d+)?$
*/


/*---------------------正则简写------------------------------------------*/
/**
*	d			[0-9]
*	w			[A0Zz-z0-9]
*	s			空白字符,空格符、Tab、回车、rn
*	字符缩写形式可以用在方括号之内或之外
*	sd		空白字符后面紧跟一个数字
*	[sd]		单个字符或数字
*	[da-fA-F]	十六进制数字
*取反字符集简写
*	[S]		[^s]
*	[W]		[^w]
*	[D]		[^d]
*/

/**--------------------日期格式----------------------------------*
*	(19|20)[0-9]{2}[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])
*	(19|20)[0-9]{2}			19或20开头,0~9重复两次。匹配1900~2099
*	[-/.]					时间分隔符,匹配"-","空格","/","."
*	(0[1-9]|1[012])			匹配01~12,匹配月份
*	(0[1-9]|[12][0-9]|3[01])01~09,10~29,30,31
*/

/**--------------------身份证----------------------------------*
*	格式:	首6位为地方码
*			7-14位为出生日期码
*			15-18位为顺序编码,用于同年同月同日同地方出生的人
*			17位为GENDER码,男单数,女双数
*	正确格式:XXXXX19000000XXXX ~ XXXXXX20991234XXXX
*	正则:d{6} (?:19|20) d{2} (?:0[1-9]|1[0-2]) (?:0[1-9]|[12]d|3[01]) d{4}
*/
?>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读