常用正则
发布时间: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} */ ?> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |