常用正则匹配
邮箱:([a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+) --只允许英文字母、数字、下划线、英文句号、以及中划线组成
([A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+) --名称允许汉字、字母、数字,域名只允许英文域名
身份证:/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/ --15位
/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/ --18位
手机号码:
/** * 手机号码 * 移动:134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188
* 联通:130,131,132,152,155,156,185,186
* 电信:133,1349,153,180,189 **/
((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)
帐号(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
验证密码强度:(?:([a-z])|([A-Z])|([0-9])|(.)){6,}|(.)+
大概介绍一下:
密码字符包括:小写字母、大写字母、数字、符号等;
这个正则会得到五个捕获组,前四个捕获组会告诉我们这个字符串包含有多少种组合(返回多少个匹配代表多少种组合)
如果这个字符串小于6位的话,则会得到第五个捕获组,长度为1(即强度为1),如果没有输入,就连捕获组5都不会得到(强度为0)
虽然是一句话的函数,但却考了好多个正则的知识点:范围、包含、长度、捕获、替换。膜拜一下!