vue项目常用正则校验

2021-10-22  本文已影响0人  Angrybird233
// 数字且小数最多保留两位
export const isFloat = (rule, value, callback) => {
  if (
    value &&
    !/(?:^[1-9]([0-9]+)?(?:\.[0-9]{1,2})?$)|(?:^(?:0){1}$)|(?:^[0-9]\.[0-9](?:[0-9])?$)/.test(
      value
    )
  ) {
    callback(new Error("请填写正确的数据格式"));
  } else {
    callback();
  }
};
// 手机号验证(宽松验证)
export const isMobileNumber = (rule, value, callback) => {
  if (value && !/1\d{10}/.test(value)) {
    callback(new Error("请填写正确的手机号码"));
  } else {
    callback();
  }
};
// 邮箱验证
export const isEmail = (rule, value, callback) => {
  if (value && !/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(value)) {
    callback(new Error("请填写正确的邮箱"));
  } else {
    callback();
  }
};
// 正整数验证
export const isPositiveInteger = (rule, value, callback) => {
  if (value && !/^[1-9]+[0-9]*$/.test(value)) {
    callback(new Error("请填写正确的正整数"));
  } else {
    callback();
  }
};

// 正整数 小于5位
export const isPositiveInteger5 = (rule, value, callback) => {
  if (value && !/^[1-9]\d{0,4}$/.test(value)) {
    callback(new Error("请填写正确的正整数"));
  } else {
    callback();
  }
};
// 数字、小数(保留两位)
export const isDecimal2 = (rule, value, callback) => {
  if (value && !/^\d+(?:\.\d{0,2})?/.test(value)) {
    callback(new Error("请填写正确的数字"));
  } else {
    callback();
  }
};
上一篇 下一篇

猜你喜欢

热点阅读