仅支持输入中文、英文、数字 "^[A-z0-9\\u4e00-\\u9fa5]*$"
输入中文、英文、数字、全角括号、半角括号 /^[\u4e00-\u9fa5a-zA-Z0-9()()]*$/
仅支持英文、数字 /^[a-zA-Z0-9]+$/
仅支持支持汉字、英文 /^[\u4e00-\u9fa5_a-zA-Z]+$/
手机号校验 /^1[3456789]\d{9}$/
电子邮箱校验 /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/
微信号校验 必须以字母开头,允许6-20位数字、字母、下划线 /^[a-zA-Z]([-_a-zA-Z0-9]{6,20})$/
身份证号校验 /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
必须以中文开头,仅支持输入中文、英文、数字 /^[\u4e00-\u9fa5][A-Za-z0-9\u4e00-\u9fa5]*/
一个汉字 🟰 两个字符
{ validator : validcodeName }
let validcodeName = ( rule, value, callback ) => {
if ( value. replace ( / [^\x00-\xff] / g , "aa" ) . length > 30 ) {
callback ( new Error ( '字符不能超过30个字符' ) )
} else {
callback ( )
}
} ;
前端脱敏公共函数
phoneEncrypt ( phone ) {
return phone. replace ( / ^(.{3})(?:\d+)(.{4})$ / , "$1****$2" )
} ,
codeEncrypt ( code ) {
return code. replace ( / ^(.{6})(?:\d+)(.{2})$ / , "$1**********$2" )
}
export function validEmail ( email ) {
const reg = / ^(([^<>()\[\]\\.,;:\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 reg. test ( email) ;
}
export function isvalidPhone ( phone ) {
const reg = / ^1[3|4|5|6|7|8|9]\d{9}$ / ;
return reg. test ( phone) ;
}
const validEmailOrPhone = ( rule, value, callback ) => {
if ( value === '' || value === null || value === undefined ) {
callback ( new Error ( '请输入手机号或邮箱' ) ) ;
} else if ( ! validEmail ( value) && ! isvalidPhone ( value) ) {
callback ( new Error ( '手机号或邮箱格式错误' ) ) ;
} else {
callback ( ) ;
}
} ;