校验经度
export function validateLng(str) {
const reg = /^(\-|\+)?(((\d|[1-9]\d|1[0-7]\d|0{1,3})\.\d{0,6})|(\d|[1-9]\d|1[0-7]\d|0{1,3})|180\.0{0,6}|180)$/
return reg.test(str)
}
校验纬度
export function validateLat(str) {
const reg = /^(\-|\+)?([0-8]?\d{1}\.\d{0,6}|90\.0{0,6}|[0-8]?\d{1}|90)$/
return reg.test(str)
}
身份证号码
export function validateCard(str) {
const reg = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/
return reg.test(str)
}
合法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 validateAlphabets(str) {
const reg = /^[A-Za-z]+$/
return reg.test(str)
}
Email
export function validateEmail(str) {
const reg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/
let obj = {
boolean: true,
msg: ''
}
obj.boolean = reg.test(str)
obj.msg = '请填写正确的邮箱地址'
return obj
}
手机号码
export function validateMobile(str) {
const reg = /^1[3456789]\d{9}$/
let obj = {
boolean: true,
msg: ''
}
obj.boolean = reg.test(str)
obj.msg = '请填写正确的电话号码'
return obj
}
export function validateMobileorPhone(str) {
const reg = /^(\+?86)1[3456789]\d{9}$/
let obj = {
boolean: true,
msg: ''
}
const regtel = /^[(](0\d{2,3}[)]\d{7,8})$/
obj.boolean = reg.test(str) || regtel.test(str)
obj.msg = '请填写正确的联系电话'
return obj
}
电话号码(区号-号码)
export function validatePhone(str) {
const reg = /^[\d\-]+$/
let obj = {
boolean: true,
msg: ''
}
obj.boolean = reg.test(str)
obj.msg = '请填写正确的联系电话'
return obj
}
邮政编码
export function validatePostCode(str) {
const reg = /^[0-9][0-9]{5}$/
let obj = {
boolean: true,
msg: ''
}
obj.boolean = reg.test(str)
obj.msg = '请填写正确的邮政编码'
return obj
}
非空校验
export function validateNull(str1, str2) {
const reg = str1.length
let obj = {
boolean: true,
msg: ''
}
if (reg === 0) {
obj.boolean = false
obj.msg = '请填写完整信息'
}
return obj
}
角色名校验
export function validateRoleName(str) {
const reg = /^[\u4E00-\u9FA50-9a-zA-Z@._]+$/
let obj = {
boolean: true,
msg: ''
}
obj.boolean = reg.test(str)
obj.msg = '角色名由 字母、数字、汉字、@、.、_ 组成'
return obj
}
密码校验
export function validatePassword(str) {
let obj = {
boolean: false,
msg: ''
}
const scReg = /['";:& ]/im
if (scReg.test(str)) {
obj.msg = '密码不能包含单引号,双引号,分号,&,冒号,空格这6个特殊字符'
return obj
}
if (str.length < 8 || str.length > 32) {
obj.msg = '密码长度为8-32个字符'
return obj
}
if (/(\w)\1{6,}/.test(str)) {
obj.msg = '密码重复字符连续不能超过6次'
return obj
}
if (weakCipher.includes(str)) {
obj.msg = '当前密码为弱密码,不能设置此密码,请重新输入密码'
obj.check = true
return obj
}
const num = /\d/.test(str)
const little = /[a-z]/.test(str)
const cap = /[A-Z]/.test(str)
const sc = /\W/.test(str)
const valid =
(num && !little && !cap && !sc) ||
(!num && little && !cap && !sc) ||
(!num && !little && cap && !sc) ||
(!num && !little && !cap && sc) ||
(!num && little && cap && !sc)
if (valid) {
obj.msg = '密码必须包含英文字母、数字和特殊字符中的两种及以上'
return obj
}
const reg = /^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?!([^(0-9a-zA-Z)])+$)^.{8,32}$/
obj.boolean = reg.test(str)
obj.msg = '密码长度不能小于8位或超过32位,至少包含字母、数字和特殊符号中两种!'
return obj
}
确认密码校验
export function validateConfirmPassword(str1, str2) {
let obj = {
boolean: true,
msg: ''
}
if (!(str1 === str2)) {
obj.boolean = false
obj.msg = '确认密码与密码不一致'
}
return obj
}
传真号码
export function validateFax(str) {
const reg = /\d/
let obj = {
boolean: true,
msg: ''
}
obj.boolean = reg.test(str)
obj.msg = '请填写正确的传真'
return obj
}