常用正则记录

1、常用密码校验--数字、大小写字母、去除特殊字符但保留@

 var validPassword = (rule, value, callback) => {
      //数字
      let REG_NUMBER = ".*\\d+.*";
      //小写字母
      let REG_UPPERCASE = ".*[A-Z]+.*";
      //大写字母
      let REG_LOWERCASE = ".*[a-z]+.*";
      //特殊符号(~!@#$%^&*()_+|<>,.?/:;'[]{}\)
      let REG_SYMBOL = ".*[~!#$%^&*()_+|<>,.?/:;'\\[\\]{}\"]+.*";
      let i = 0;
      if (value == null || value.length < 8 || value.length > 12) {
        return callback(new Error('请输入8-12位密码包含数字和大小写字母'))
      }
      if (value.match(REG_NUMBER)) i++;
      if (value.match(REG_LOWERCASE)) i++;
      if (value.match(REG_UPPERCASE)) i++;
      if (!value.match(REG_SYMBOL)) i++;
      if (i < 4) {
        return callback(new Error('请输入8-12位密码包含数字和大小写字母'))
      } else {
        return callback()
      }
    }

 2、判断是否为正整数

    // 是否正整数
    const isNumber = (rule, value, callback) => {
      if (!value) {
        return callback();
      }
      const r = /^\+?[1-9][0-9]*$/; // 正整数
      if (!r.test(value)) {
        return callback(new Error("请输入正整数"));
      } else {
        return callback();
      }
    };

3、判断是否为正数,且保留两位小数(正数位置可限制长度)

    // 正数,保留两位小数
    const numberValidator = (rule, value, callback) => {
      if (!value) {
        return callback();
      }
      const reg = /^(\+?[1-9][0-9]{0,9})(\.\d{1,2})?$/;
      if (!reg.test(value)) {
        return callback(new Error("请输入正数,可保留两位小数"));
      } else {
        return callback();
      }
    };

4、大于0的正则,可保留两位小数

      const reg = /(^[1-9](\d+)?(\.\d{1,2})?$)|(^\d\.\d{1,2}$)/

5、大于0的数字

      const reg = /^\+?[1-9]\d*$/

 6、0或正整数

    const res = /^(0|\+?[1-9][0-9]*)$/

 7、邮箱

    const res =  /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/

8、身份证号

const res = /(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}$)/

 9、汉字

/^[\u4e00-\u9fa5]+$/

10、手机号

/^1(3|4|5|6|7|8|9)\d{9}$/

11、是否是数字或字母

/^[A-Za-z0-9]$/

12、0或正整数,最大不超过999

/^(0|\+?[1-9][0-9]{0,2})$/

13、0或正数,最多保留两位小数

/^(0|\+?[1-9][0-9]{0,9})(\.\d{1,2})?$/;

14、请输入含0到100的正数

/^(\d|[1-9]\d|100)$/

15、是否为数字,最多保留两位小时(可为负数)

/(^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d{1,2})?$)/

16、(x,y)格式校验

/^\(\d,\d\)$/

17、0到100 正则校验

/^(?:[1-9]?\d|100)$/

18、0到100正则校验,最多保留两位小数

/(^(?:[1-9]?\d|100)?(\.\d{1,2})?$)|(^\d\.\d{1,2}$)/

  

 

  

posted @ 2023-12-14 10:14  总有diao民想害朕  阅读(1)  评论(0编辑  收藏  举报