前端我已经做了很多次的前端表单验证,这回想整理一下,以便以后后续直接拿来使用。
验证方式
关于验证方式我一直都是用的test()方法
例如:
正则表达式
身份证号码正则表达式
//第二代身份证号码正则
let isTrue = /^[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]$/;
//第一代身份证正则表达式(15位)
let isTrue=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
现在基本都用的是第二代身份证,所以一代身份证的正则可以忽略
手机号码正则表达式
let isTrue = /^(13[0-9]|14[5-9]|15[012356789]|166|17[0-8]|18[0-9]|19[8-9])[0-9]{8}$/;
邮箱正则表达式
let isTrue =/^([A-Za-z0-9_\-\.\u4e00-\u9fa5])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,8})$/;
用户名正则
//用户名正则,4到16位(字母,数字,下划线,减号)
let isTrue = /^[a-zA-Z0-9_-]{4,16}$/;
密码正则
//密码正则,以字母开头,长度在6~18之间,只能包含字母、数字和下划线
let isTrue =^[a-zA-Z]\w{5,17}$;
//强密码正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符
let isTrue = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/;
QQ号码正则
let isTrue = /^[1-9][0-9]{4,10}$/;
微信号码正则
//微信号正则,6至20位,以字母开头,字母,数字,减号,下划线
let isTrue = /^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/;
邮政编码正则
let isTrue=[1-9]{1}(\d+){5};