正则表达式:检测密码由6-21字母和数字组成

正则表达式:检测密码由6-21字母和数字组成,不能是纯数字或纯英文;很多人一下子就想到了^[a-zA-Z0-9]{6,21}$,但是这个正则不能保证不能是纯数字或纯英文,所以这个正则不符合要求。

这个正确的正则应该是: ^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$。

具体js判断代码如下:

function newPW(){
    regExp=/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,21}$/;
    if($(".newPW").val()==""){
        $(".popTips").text("密码不能为空");
        $(".popTips").show();
        return false;
    }
    else if(!regExp.test($(".newPW").val())){
        $(".popTips").text("密码格式错误");
        $(".popTips").show();
        return false;
    }
    else{
        $(".popTips").hide();
        return true;
    }
}
$("ul li .newPW").blur(newPW);

你可能感兴趣的:(正则表达式:检测密码由6-21字母和数字组成)