正则解析
11位手机号码
reg表达式:/^[1][3,4,5,7,8][0-9]{9}$/
规则:第一个数字1,第二个数字只能是3,4,5,7,8中的某一个,剩下的号码需要有9个数,范围在0-9之间,即 1+1+9=11,11位手机号码
邮箱地址
reg表达式:/^[A-Za-z\d]+([-_.][A-Za-z\d]+)*@([A-Za-z\d]+[-.])+[A-Za-z\d]{2,4}$/
规则:字母或数字开头,中间可以有-或_或.连接的字母数字组合,@符号,后面可以有-或_或.连接的字母数字组合,最后是域名
可验证:‘xxxxxxxxx@’,‘xx@’,‘xxxx.xxxxx@’,‘xxxx-xxxxx@’,‘xxxx.xxxxx@’;
18位身份证号码 1999-2099
reg表达式:/^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
具体规则参考博文 15/18位身份证号码验证的正则表达式总结(详细版)
代码
regexp.js
export default {// ********************* 用户信息 *********************************phoneNumber: /^[1][3,4,5,7,8][0-9]{9}$/, // 11位手机号码email: /^[A-Za-z\d]+([-_.][A-Za-z\d]+)*@([A-Za-z\d]+[-.])+[A-Za-z\d]{2,4}$/, // 邮箱地址 idCard: /^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/, // 身份证号码// ********************* 金额 *********************************intWithin100: /^(\d{1,2}|100)$/, // 100以内正整数priceWithinTwoDecimal: /^0\.([1-9]|\d[1-9])$|^[1-9]\d{0,8}\.\d{0,2}$|^[1-9]\d{0,8}$/, // 有效金额,最多两位小数}