//密码为八位及以上并且字母数字特殊字符三项都包括
    var strongRegex = new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g");
    //密码为八位及以上并且字母、数字、特殊字符三项中有两项,强度是中等
    var mediumRegex = new RegExp("^(?=.{8,})(((?=.*[A-Z])(?=.*[a-z]))|((?=.*[A-Z])(?=.*[0-9]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[a-z])(?=.*\\W))|((?=.*[0-9])(?=.*\\W))|((?=.*[A-Z])(?=.*\\W))).*$", "g");
    var enoughRegex = new RegExp("(?=.{8,}).*", "g");

话不多说,直接上代码哈,inputMethod方式是input框的@input事件,边输入边校验。

inputMethod(value) {
	//console.log('value:',value)
	//密码为八位及以上并且大小写字母数字特殊字符三项都包括
    var strongRegex = new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g");
    //密码为八位及以上并且大小写字母、数字、特殊字符三项中有两项,强度是中等
    var mediumRegex = new RegExp("^(?=.{8,})(((?=.*[A-Z])(?=.*[a-z]))|((?=.*[A-Z])(?=.*[0-9]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[a-z])(?=.*\\W))|((?=.*[0-9])(?=.*\\W))|((?=.*[A-Z])(?=.*\\W))).*$", "g");
    var enoughRegex = new RegExp("(?=.{8,}).*", "g");
    if(strongRegex.test(value)) {
    	//console.log('强密码-----',value)
    	this.str2="密码强度不错哦!"
    	this.note='请至少使用大小写字母、数字、符号两种类型组合的密码,长度至少为8位。<i>当前密码强度:强</i>'
    } else if (mediumRegex.test(value)){
    	//console.log('中等密码-----',value)
    	this.note='请至少使用大小写字母、数字、符号两种类型组合的密码,长度至少为8位。<i>当前密码强度:中等</i>'
    	this.str2="密码强度中等!"
    } else if(enoughRegex.test(value)){
    	//console.log('弱密码-----',value)
    	this.str2="密码强度太弱,请至少使用字母、数字、符号两种类型组合的密码!"
    	this.note='请至少使用大小写字母、数字、符号两种类型组合的密码,长度至少为8位。<i>当前密码强度:弱</i>'
    } else {
    	this.note='请至少使用大小写字母、数字、符号两种类型组合的密码,长度至少为8位。'
    	//console.log('密码-----',value)
    }
}

效果图如下:

 

 

 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐