正则表达式通常用于输入校验,用法示例为
if (!(/^1[345789]d{9}$/.test($('.tel').val().trim()))) { $.toast("手机号格式有误", "text") return }
即用/xx/.test(textVal)进行检验,校验失败则弹出提示(例如用weui的toast来提示)并return,否则继续往下执行。
这里汇总下常用的正则表达式:
1.手机号:/^1[345789]d{9}$/
2.银行卡号:/^d{19}$/
其中,/ /表示中间为正则表达式,^表示正则表达式开始,$表示正则表达式结束,d表示数字,[ ]表示方括号中任一元素,{ }里的数字表示重复的次数。
3.只能正数和零:/(^[1-9](d+)?(.d{1,2})?$)|(^0$)|(^d.d{1,2}$)/
4.允许负数:/(^-?[1-9](d+)?(.d{1,2})?$)|(^-?0$)|(^-?d.d{1,2}$)/
其中,[1-9]表示1-9间任一元素,+表示1到无穷个,?表示匹配前面的子表达式0次或1次(可有可无),|表示或,()则是分组,{1,2}表示1或2次,记得.需要转义。
5.邮箱号:/^[A-Za-z0-9u4e00-u9fa5]+@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$/
6.正整数:/^[1-9]d*$/
其中,*表示0到无穷个。
7.身份证号码:/(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)/
也可以把正则表达式都放在一个固定的js文件,如取名为validate.js中进行封装,方便调用。
/* 数字*/ export function validateNumber(str) { const reg = /^[0-9]+$/ return reg.test(str) }