正则判断

1、 除汉字、英文、数字 和 逗号、句号之外的字符

/[^\u4e00-\u9fa5a-zA-Z\d,\.,。]+/

\u4e00-\u9fa5匹配汉字
a-zA-Z匹配字母
\d匹配数字
,.,。匹配逗号和句号
^表示非
+表示尽可能多的匹配

    keywords:[
        {validator:function(rule,value,callback){

            if(value != value.replace(/[^\u4e00-\u9fa5,\,]+/,'')){
            	//正则里^表示非,除...之外的,   \u4e00-\u9fa5 匹配汉字,  \,是匹配转译的逗号,	
            	//即:将value里除汉字 和 逗号之外字符的都替换为 空 后,若和原value不同,说明里面有除汉字和逗号外的字符,然后进行提示
                callback(new Error("请输入关键词(汉字),多个关键词用逗号隔开"));
            }else{
              if(value.startsWith(',')||value.startsWith(',')||value.endsWith(',')||value.endsWith(',')){
                callback(new Error("请输入关键词(汉字)开始或结束"));
              }else{
                let arr = value.replace(/,/ig,',').split(',')

                if(arr.length<3 || arr.length>5){
                  callback(new Error("请输入3-5关键词(汉字),多个关键词用逗号隔开"));
                }else{
                    callback();
                }
              }

            }
        }, trigger: 'blur'}
    ],
    price:[
        { required: true,message: '请正确填写预计服务金额', trigger: 'blur'},
        {validator:function(rule,value,callback){
            let priceBool = true;
            Object.keys(value).forEach(key=>{
                if(value[key]==''||Number(value[key])<0){
                    priceBool = false;
                }
            });
            if(priceBool == false){
                callback(new Error("请正确填写预计服务金额"));
            }else{
                callback();
            }
        }, trigger: 'blur'}
    ], 
    linkName:[
        { required: true, message: '请输入联系人', trigger: 'blur' },
        { min: 2, max: 5, message: '长度在 2 到 5 个字符', trigger: 'blur' }
    ],
    linkPhone:[
        { required: true, message: '请输入联系电话', trigger: 'blur' },
        { validator:function(rule,value,callback){
            if(/^1[34578]\d{9}$/.test(value) == false){
                callback(new Error("请输入正确的手机号"));
            }else{
                callback();
            }
        }, trigger: 'blur'}
    ],
    xemail:[
        { required: true, message: '请输入邮箱地址', trigger: 'blur' },
        { validator:function(rule,value,callback){
            const mailReg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/;
            if (mailReg.test(value)) {
                callback()
            } else {
                callback(new Error('请正确输入邮箱地址'))
            }
        }, trigger: 'blur'},
    ],
    intro: [
        { required: true, message: '请填写需求简介', trigger: 'blur' },
        { min: 0, max: 400, message: '长度在 0 到 400 个字符', trigger: 'blur' }
    ]
},

2、验证身份证号

	var validNamecade = (rule, value, callback) => {
		if(!value) {
			callback(new Error('请输入身份证号码'));
		} else if( !(/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(value)) ){
			callback(new Error('身份证号格式错误'));
		} else {
			callback();
		}
	};
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值