/^(?=.*\d)(?=.*([a-z]|[A-Z])).{8,16}$/
提前谢谢。
/^(?=.*\d)(?=.*[a-zA-Z])[0-9a-zA-Z]{8,16}$/
你的正则表达式的最后一部分, .{8,16}
.{8,16}
向前看只确保至少有一个数字和一个字母-它没有说明任何其他字符。另外,请注意,我已经更新了字母匹配部分—您不需要两个字符类。
在密码中不允许特殊字符是完全违反直觉的。你为什么这么做?