使用正则表达式设置强密码
·
强密码正则表达式验证
import re
def validate_password(password):
# 至少8位,包含大小写字母、数字和特殊字符
pattern = r'^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$'
return re.match(pattern, password) is not None
# 测试示例
if __name__ == "__main__":
test_passwords = [
"Password123!", # 合法
"pass123", # 缺少大写字母和特殊字符
"PASSWORD123!", # 缺少小写字母
"Pass123", # 缺少特殊字符
"Pass123!" # 长度不足8位
]
for pwd in test_passwords:
print(f"{pwd}: {validate_password(pwd)}")
1.实现了8位以上包含大小写字母、数字和特殊字符的强密码验证。
2.使用正则表达式分组匹配确保所有字符类型均存在。
3.提供测试用例验证不同场景的密码合法性。
4.支持直接运行测试,输出验证结果。
5.可扩展性强,可修改正则表达式调整密码策略。
更多推荐
所有评论(0)