前端表单常用的正则
1、邮箱:
验证:/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/
2、手机号码:
验证:/^(0|86|17951)?(13[0-9]|14[0-9]|15[0-9]|16[0-9]|17[0-9]|18[0-9]|19[0-9])[0-9]{8}$/
3、身份证号码:
验证:/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/
4、密码:
// 至少8-16个字符,至少1个大写字母,1个小写字母和1个数字,不能包含特殊字符: export const checkPassword = (str) => { var reg = /^[a-zA-Z0-9]{8,16}$/; return reg.test(str) && /\d+/.test(str) && /[a-z]+/.test(str) && /[A-Z]+/.test(str); }; // 密码6-16位,包含数字,大小写字母,符号 export const passwordReg=/^[A-Za-z0-9]\w{5,15}$/
5、正整数:
输入:oninput="value=value.replace(/^(0+)|[^\d]*/g,'')"
验证:/^[1-9][\d]*/g
6、正整数+2位小数点
输入:oninput="value= value.match(/\d+(\.\d{0,2})?/) ? value.match(/\d+(\.\d{0,2})?/)[0] : ''"
验证:/^[1-9][\d]*[\.]{1}[\d]{1,2}/g
7、不能输入空格
输入:oninput="value=value.replace(/\s+/g,'')"
8、控制输入长度
输入:oninput="if((value+'').split('.').length==2){value=value.slice(0,11)}else{value=value.slice(0,8)}"
9、车牌号(普通车牌+新能源车牌)
验证:/^([京津晋冀蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼渝川贵云藏陕甘青宁新][A-Z][1-9DF][1-9A-Z]\d{3}[1-9DF]|[京津晋冀蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼渝川贵云藏陕甘青宁新][A-Z][\dA-Z]{5})$/
10、QQ号码(5至11位)
验证:/^[1-9][0-9]{4,10}$/11、经纬度(整数.小数)
经度(整数部分为0-180的整数,小数部分为6位的正数):/^(\-|\+)?(((\d|[1-9]\d|1[0-7]\d|0{1,3})\.\d{0,6})|(\d|[1-9]\d|1[0-7]\d|0{1,3})|180\.0{0,6}|180)$/
纬度(整数部分为0-90的整数,小数部分为6位的正数):/^(\-|\+)?([0-8]?\d{1}\.\d{0,6}|90\.0{0,6}|[0-8]?\d{1}|90)$/