js 求正则表达式 : 8-20位 必须包涵大写字母,小写字母,数字,特殊字符, 必须包涵哈

js 求正则表达式 : 8-20位 必须包涵大写字母,小写字母,数字,特殊字符, 必须包涵哈, 现在这儿谢谢大神了

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <form>
        <input type="text" name="fname" id="fname"/>
        <input type="button" value="Submit" id="submit"/>
    </form>
<script>
    window.onload=function(){
        /*js 求正则表达式 :  8-20位   必须包涵大写字母,小写字母,数字,特殊字符, 必须包涵哈.*/
        
        document.getElementById("submit").onclick=function(){
            var fname=document.getElementById("fname").value;


            var pattern=/[A-Z]+[a-z]+[0-9]+[^A-Za-z0-9]+/g;
            alert(pattern.test(fname));
            if(fname.length<8 || fname.length>20){
                alert("长度必须是8-20位");
            }
        }
    }
</script>

</body>
</html>
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-05-15
var reg=/^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[^\sA-Za-z0-9])\S{8,20}$/;追问

兄弟不对啊

追答

那不对了,大写字母,小写字母,数字,特殊字符都有,在8-20位可以匹配啊

追问

我输入ABCDabcd123. 通不过啊

追答

不是必须包含特殊字符吗,你这有特殊字符?

本回答被网友采纳
相似回答