匹配验证常用案例
① 匹配座机号
var regexp = /^(0\d{2}-\d{8})|(0\d{3}-\d{7})$/;
var demo = /^0\d{2}-\d{8}$|^0\d{3}-\d{7}$/;
② 匹配中文
/^[\u4e00-\u9fa5]{2,4}$/
③ 匹配验证表单(注册QQ)
验证QQ号:/^[1-9][0-9]{4,}$/
验证手机号:/^((13[0-9])|(15[^4,\D])|(18[0-9]))\d{8}$/
验证邮箱:/^[\w\-\.]+\@[\w]+\.[\w]{2,4}$/
验证座机号:/^0\d{2}-\d{8}$|^0\d{3}-\d{7}$/
验证用户名:/^[a-zA-Z0-9_-]{3,16}$/
验证密码:/^[\$a-zA-Z0-9_-]{6,18}$/
④ 匹配密码强度
区分大小写英文字母:/^([a-z].*[A-Z])|([A-Z].*[a-z])$/
带有字母和数字: /^([a-z].*[0-9])|([A-Z].*[0-9])|([0-9].*[a-zA-Z])$/
字母数字中间加有下划线(想要什么中括号中加):/^[A-Za-z0-9]+[_$][A-Za-z0-9]*$/
⑤ 匹配双字节字符(包括汉字在内):[^\x00-\xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
⑥ 匹配空白行:\n\s*\r
评注:可以用来删除空白行
⑦ 匹配HTML标记:< (\S*?)[^>]*>.*?|< .*? />
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力
⑧ 匹配首尾空白字符:^\s*|\s*$
评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式
⑨ 匹配Email地址:
/^[\w\-\.]+\@[\w]+\.[\w]{2,4}$/
评注:表单验证时很实用
⑩ 匹配网址URL:[a-zA-z]+://[^\s]*
评注:网上流传的版本功能很有限,上面这个基本可以满足需求
⑪ 匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):
/^[a-z0-9_-]{3,16}$/
评注:表单验证时很实用
⑫ 匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}
评注:匹配形式如 0511-4405222 或 021-87888822
⑬ 匹配腾讯QQ号:[1-9][0-9]{4,}
评注:腾讯QQ号从10000开始
⑭ 验证手机号:
/^((13[0-9])|(15[^4,\D])|(18[0,5-9]))\d{8}$/
⑮ 匹配中国邮政编码:[1-9]\d{5}(?!\d)
评注:中国邮政编码为6位数字
⑯ 匹配身份证:\d{15}|\d{18}
评注:中国的身份证为15位或18位
⑰ 匹配 ip 地址:\d+\.\d+\.\d+\.\d+
评注:提取ip地址时有用
⑱ 匹配密码: /^[a-zA-Z0-9_-]{6,18}/