前端开发中 常用的表单正则校验规则

合法url

export function validateURL(textval) {
  const urlregex = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/
  return urlregex.test(textval)
}

小写字母

export function validateLowerCase(str) {
  const reg = /^[a-z]+$/
  return reg.test(str)
}

大写字母

export function validateUpperCase(str) {
  const reg = /^[A-Z]+$/
  return reg.test(str)
}

大小写字母

export function validatAlphabets(str) {
  const reg = /^[A-Za-z]+$/
  return reg.test(str)
}

判断是否全为数字

export function isDigital(str) {
  const reg = /^[0-9]+$/
  return reg.test(str)
}

判断是否是有效email

export function validateEmail(email) {
  const re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
  return re.test(email)
}

判断是否为电话号码

export function isPhoneNumber(str) {
  const reg = /^0?(13[0-9]|15[012356789]|166|17[013678]|18[0-9]|14[57])[0-9]{8}$/
  return reg.test(str)
}
export function isSimplePhoneNumber(str) {
  const reg = /^[1][3,4,5,6,7,8,9][0-9]{9}$/
  return reg.test(str)
}

判断是否为固定电话

export function isTelephoneNumber(str) {
  const reg = /^(0?(13[0-9]|15[012356789]|166|17[013678]|18[0-9]|14[57])[0-9]{8})|(400|800)([0-9\\-]{7,10})|(([0-9]{4}|[0-9]{3})(-| )?)?([0-9]{7,8})((-| |转)*([0-9]{1,4}))?$/
  return reg.test(str)
}

判断是否空对象

export function isEmptyObject(obj) {
  for (var key in obj) {
    return false
  }
  return true
}

检验是否小于500

export function checkMax500(rule, value, callback) {
  if (value == '' || value == undefined || value == null) {
    callback();
  } else if (!Number(value)) {
    callback(new Error('请输入[1,500]之间的数字'));
  } else if (value < 1 || value > 500) {
    callback(new Error('请输入[1,500]之间的数字'));
  } else {
    callback();
  }
}

大于0小于10的正数最多保留一位小数

export function offMethod(rule, value, callback) {
  const reg = /^((0\.[1-9]{1})|(([1-9]{1})(\.\d{1})?))$/ 
  if (reg.test(value)) {
    callback()
  } else {
    callback(new Error('请输入0-10的正数,最多保留一位小数'));
  }
}

大于0的正数(包括小数)

export function bigZero(rule, value, callback) {
  if (value == '' || value == undefined || value == null) {
    callback()
  } else {
    const reg = /^([1-9]\d*(\.\d*[1-9])?)|(0\.\d*[1-9])$/
    if (reg.test(value)) {
      callback()
    } else {
      callback(new Error('请输入大于0的正数'));
    }
  }
}

大于0的正数,最多保留两位小数

export function preContent(rule, value, callback) {
  if (value == '' || value == undefined || value == null) {
    callback()
  } else {
    const reg = /(^[1-9](\d+)?(\.\d{1,2})?$)|(^\d\.\d{1,2}$)/
    if (reg.test(value)) {
      callback()
    } else {
      callback(new Error('大于0的正数,最多保留两位小数'));
    }
  }
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值