弱密码校验正则表达式
时间: 2023-11-22 14:50:01 浏览: 130
以下是Java中弱密码校验的正则表达式:
```java
(?![0-9A-Z]+$)(?![0-9a-z]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,18}
```
该正则表达式的含义是:密码必须是6-18位的数字、大小写字母组合,且不能全是数字、全是大写字母或全是小写字母。
示例代码如下:
```java
String password = "Abc123";
boolean isWeakPwd = false;
if (!password.matches("(?![0-9A-Z]+$)(?![0-9a-z]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,18}")) {
isWeakPwd = true;
}
System.out.println(isWeakPwd); // 输出:false
```
相关问题
生成密码校验正则表达式,规则为:口令应至少为8位,且为数字、大小写字母和特殊符号中至少3类的组合,且不得使用符合强口令策略,但易被猜解的出厂默认口令、按键盘规则排列的口令等各种形式的弱口令
以下是生成密码校验正则表达式的代码:
^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%^&*()_+~`\-={}[\]:;"'<>,.?/])[a-zA-Z0-9!@#$%^&*()_+~`\-={}[\]:;"'<>,.?/]{8,}$
这个正则表达式可以满足口令至少为8位,且为数字、大小写字母和特殊符号中至少3类的组合的要求,同时也可以排除易被猜解的出厂默认口令、按键盘规则排列的口令等各种形式的弱口令。
javascript弱密码校验正则
以下是一个简单的 JavaScript 正则表达式,用于匹配弱密码:
```
/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z\d]{8,}$/
```
这个正则表达式要求密码至少包含一个数字、一个小写字母和一个大写字母,且长度至少为 8 个字符。但它仍然不能保证密码的安全性,因为它只是检查密码是否符合一些基本要求。更好的做法是使用更强大的密码策略和技术,如密码哈希和加盐等。
阅读全文