这篇文章会记录使用过的正则表达式
1. 1-31正整数验证
^((0?[1-9])|((1|2)[0-9])|30|31)$
2.身份证号码验证
const reg = /^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
3.手机号码验证
const reg = /^1[3|4|5|7|8][0-9]{9}$/;
4.大于0的数
const reg = /^$|^\s*[1-9]\d*\s*$/
5.大于0的正整数
const reg = /^\+?[1-9]\d*$/;
6.邮箱验证
const reg = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/;
7.密码验证
密码必须是包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间
const reg =^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$
8. 字符串只能是中文
const reg =^[\\u4e00-\\u9fa5]{0,}$
9.由数字、26个英文字母或下划线组成的字符串
const reg =^\\w+$
10.校验日期
const reg =^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$
11. 校验金额
const reg =^[0-9]+(.[0-9]{2})?$
12.去除括号和括号中的内容
let nstr = str.replace(/\([^\)]*\)/g,"");
13.常用密码验证
^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$
至少1个大写字母,(?=.*?[A-Z])------A-Z是大写字母范围
至少1个小写英文字母,(?=.*?[a-z])-----a-z是小写字母范围
至少1位数字,(?=.*?[0-9])----0-9是数字范围
至少有1个特殊字符,(?=.*?[#?!@$%^&*-])----#?!@$%^&*-是满足条件的所有特殊字符
最小8个长度,最多30个长度.{8,30}-----8是最小长度,30为最大长度
14.获取引号内部的字符串
let regex = /'([^"]*)'/g;
regex.exec('12121')