要求:
大小写字母、数字、除空格以外的其他特殊字符,且满足三种以上即可
/^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W_]+$)(?![a-z0-9]+$)(?![a-z\W_]+$)(?![0-9\W_]+$)[a-zA-Z0-9\W_]{8,20}$/ && /^[^\s]*$/
目前用了两个正则校验,有谁能帮忙整合一下
验证一下整合就是2个规则中间加个|
符号,但是太长了
<body>
<div class="mydiv">
<input id="myinput" type="text" onkeyup="check(this.value);">
<div id="err" style="background-color: #ccc; min-height: 30px;"></div>
</div>
</body>
<script>
/*
数字 小写 特殊
数字 大写 特殊
大 小写 数字
大 小写 特殊
*/
let reg1 = /(?=.*\d)(?=.*[~!@#$%^&*()_+`\-\=<>?,:;\/'".\\\|[\]{}])((?=.*[a-z])|(?=.*[A-Z]))/
let reg2 = /(?=.*[a-z])(?=.*[A-Z])((?=.*\d)|(?=.*[~!@#$%^&*()_+`\-\=<>?,:;\/'".\\\|[\]{}]))/
let reg3 = /\s/g
function check(value) {
if (reg1.test(value) || reg2.test(value)) {
document.getElementById("err").innerHTML= "正确";
} else {
document.getElementById("err").innerHTML= "错误";
}
}
</script>
?![a-zA-Z0-9\s]+$
密码复杂度验证