Loading

记录平时撸项目期间写的一些数据验证正则表达式

JavaScript 原创正则收集整理, 随缘更新

邮箱验证

  1. 最大支持二级域名, 若需要支持更多级修改 (\.[a-zA-Z]{2,4}){1,2} 中的 {1,2} 即可, 可修改为 {1,3}{1,}+
  2. 邮箱支持所有英文大小写字母数字及 - 符号
  3. 域名限制为标准长度 1-63 位字符
  4. 不支持中文域名
^((?=[a-zA-Z0-9])[a-zA-Z0-9-]{1,15}@)([a-zA-Z0-9-]{1,63})((\.[a-zA-Z]{2,4}){1,2}(?!\.))$
匹配 不匹配
12345@abc.com.cn abc@123.com.cn.cn
admin@123-v.com abc.cd.com
ab-c@ab-c.com.cn -abc@123.com

手机号验证

  1. 手机号第一位必须为 1, 第二位 3-9 的数字, 其后跟随 9 个数字
^1[3-9]\d{9}$
匹配 不匹配
13112341234 12112341234
15812341234 25812341234

微信号验证

  1. 微信号不能以数字开头,可以使用 6-20 位字母、数字、下划线或减号组合而成。
^(?!\d)[a-zA-Z0-9-_]{6,20}$
匹配 不匹配
wangxiaoda 123wang
wang-123 wangxiaodawangxiaoda1
-123wang @wangxiaoda

密码验证

包含指定内容

  1. 可以包含 大小写字母、数字及特殊符号(.*+_~!@#$%^&),没有必须要求只要由这些条件组成 6-18 个字符即可
^[a-zA-Z0-9.*+_~!@#$%^&]{6,18}$
例如
wang12
Wang@@
123456.

必须包含指定内容

  1. 密码必须包含 大/小写字母、数字、特殊符号(.*+_~!@#$%^&)且由 6-18 个字符组成
^(?=.*[a-zA-Z])(?=.*\d)(?=.*[.*+_~!@#$%^&]).{6,18}$
匹配 不匹配
wang123@ wang123
Wang123. 123###
#123456a *Wang@@
  1. 若需要更改条件, 例如必须包含: 大写字母、小写字母、数字, 修改/增加对应条件 (?=.*[a-zA-Z]), 其中 [a-zA-Z] 为必须条件, 对比正则适当调整即可, 结果如下
^(?=.*[A-Z])(?=.*[a-z])(?=.*\d).{6,18}$

QQ号验证

  1. QQ首位为 1-9 , 其后接 0-9 共 5-10位, 由于考虑QQ升位顾限制 5-11 位
^[1-9]([0-9]{4,10})$
匹配 不匹配
12345 1234
8888888888 555555555555

更多持续更新中...

posted @ 2021-02-06 01:41  王小大  阅读(128)  评论(0)    收藏  举报