/**
* @Description 校验密码规则
* @date 2021-09-28
* @param {any} rule
* @param {any} value
* @param {any} callback
* @returns {any}
*/
export const validatePwd = (rule, value, callback) => {
if (!rule.required && (value === '' || value == null || value == undefined)) {
callback()
return
}
if (value === '' || value == null || value == undefined) {
callback(new Error('请输入密码'))
} else {
if (value.length > 16 || value.length < 6) {
callback(new Error('密码长度8-16个字符'))
} else {
// 校验 emoji 表情、中文、空格、至少由数字、小写字母、大写字母和特殊字符中的 2 种或 2 种以上类型组合而成,且密码中不能包含用户名
const reg = /([\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDE4F])/
const zhReg = /([\u4E00-\u9FA5])/
const spaceReg = /^\s*$/
const passwordreg = /(?![A-Z]*$)(?![a-z]*$)(?![0-9]*$)(?![^a-zA-Z0-9]*$)/
if (reg.test(value) || zhReg.test(value) || spaceReg.test(value) || !passwordreg.test(value)) {
callback(new Error('密码格式不正确'))
} else {
callback()
}
}
}
}
/**
* @Description 校验ip规则
* @date 2021-09-28
* @param {any} rule
* @param {any} value
* @param {any} callback
* @returns {any}
*/
export const validateIp = (rule, value, callback) => {
if (value === '' || value == null || value == undefined) {
callback(new Error('请填写ip地址'))
} else {
const reg =
/^((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}$/
if (!reg.test(value)) {
callback(new Error('请输入正确的ip地址'))
} else {
callback()
}
}
}
/**
* @Description 校验port规则
* @date 2021-09-28
* @param {any} rule
* @param {any} value
* @param {any} callback
* @returns {any}
*/
export const validatePort = (rule, value, callback) => {
if (value === '' || value == null || value == undefined) {
callback(new Error('请填写端口号'))
} else {
const reg = /^(([0-9]|[1-9]\d{1,3}|[1-5]\d{4}|6[0-5]{2}[0-3][0-5]))$/
if (!reg.test(value)) {
callback(new Error('输入正确的端口号'))
} else {
callback()
}
}
}
/**
* @Description 校验数字规则
* @date 2021-09-28
* @param {any} rule
* @param {any} value
* @param {any} callback
* @returns {any}
*/
export const validateInt = (rule, value, callback) => {
if (value === '' || value == null || value == undefined) {
callback(new Error('请输入内容'))
} else {
if (!Number.isInteger(value)) {
callback(new Error('请输入数字值'))
} else {
callback()
}
}
}
javaScript 常用正则判断
最新推荐文章于 2023-07-06 15:47:50 发布