ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

常见的正则校验规则

2021-12-01 15:31:30  阅读:211  来源: 互联网

标签:Vue Error 校验 value zA callback 正则 规则 else


常见的校验规则:

手机号的校验规则:

/^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\d{8}$/;

Vue用法实例:

Vue.prototype.isMobile = (rule, value, callback) => {
  let mobileReg = /^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\d{8}$/;
  if (mobileReg.test(value)) {
    callback();
  } else {
    return callback(new Error('请输入手机号的正确格式'));
  }
};

邮箱的校验规则:

/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/

Vue用法实例:

Vue.prototype.isEmail = (rule, value, callback) => {
  let emailReg = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/;
  if (emailReg.test(value)) {
    callback();
  } else {
    return callback(new Error('请输入邮箱的正确格式'));
  }
};

身份证号的校验规则:

/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/

Vue用法实例:

Vue.prototype.idNoReg = (rule, value, callback) => {
 let idNoReg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
 if (idNoReg.test(value)) {
   callback();
 } else {
   return callback(new Error('请输入正确的证件号'));
 }
};

护照号的校验规则:

/^1[45][0-9]{7}$|(^[P|p|S|s]\d{7}$)|(^[S|s|G|g|E|e]\d{8}$)|(^[Gg|Tt|Ss|Ll|Qq|Dd|Aa|Ff]\d{8}$)|(^[H|h|M|m]\d{8,10}$)/

Vue用法实例:

Vue.prototype.isPassportNoReg = (rule, value, callback) => {
  let isPassportNoReg = /^1[45][0-9]{7}$|(^[P|p|S|s]\d{7}$)|(^[S|s|G|g|E|e]\d{8}$)|(^[Gg|Tt|Ss|Ll|Qq|Dd|Aa|Ff]\d{8}$)|(^[H|h|M|m]\d{8,10}$)/;
  if (isPassportNoReg.test(value)) {
    callback();
  } else {
    return callback(new Error('请输入正确的护照号'));
  }
};

密码的校验规则: (规则在提示语那里)

/^(?!^(\d+|[a-zA-Z]+|[~_]+)$)^[\w~_]{6,16}$/

Vue.prototype.isLoginPass = (rule, value, callback) => {
  let loginPassword = /^(?!^(\d+|[a-zA-Z]+|[~_]+)$)^[\w~_]{6,16}$/;
  if (loginPassword.test(value)) {
    callback();
  } else {
    return callback(new Error('6-16位,字母、数字、下划线,至少两种'));
  }
};

只能输入英文的校验规则:

/^[A-Za-z]+$/

Vue.prototype.isWords = (rule, value, callback) => {
  let isWords = /^[A-Za-z]+$/;
  if (isWords.test(value)) {
    callback();
  } else {
    return callback(new Error('请输入拼音'));
  }
};

非负整数:

/^\d+$/

Vue.prototype.isInger = (rule, value, callback) => {
  let isInger= /^[A-Za-z]+$/;
  if (isInger.test(value)) {
    if (value.length > 1) {
    // 判断是否是0开头,0123也是不合法的
        if (value.substring(0, 1) > 0) {
            callback()
        } else {
            callback(new Error('请输入非负整数'))
        }
     } else {
         callback()
      }
   } else {
       callback(new Error('请输入非负整数'))
   }
};

不能输入汉字:

/[\u4E00-\u9FA5]/g

Vue.prototype.isZw = (rule, value, callback) => {
  let isZw = /[\u4E00-\u9FA5]/g;
  if (isZw.test(value)) {
     callback(new Error('不能输入中文'))
   } else {
     callback()
   }
};

标签:Vue,Error,校验,value,zA,callback,正则,规则,else
来源: https://www.cnblogs.com/oyly/p/15629188.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有