我现在正在研究本书中的练习项目,并希望得到一些关于下面项目的建议,以了解我是否正在进行中。
编写一个使用正则表达式的函数,以确保传递的密码字符串很强。强密码定义为长度至少为八个字符,包含大写和小写字符,并且至少有一个数字的密码。您可能需要针对多个正则表达式模式测试字符串以验证其强度。
我提出了以下但不太确定从哪里开始。感谢是否有人可以提供帮助!提前谢谢!
#! /usr/bin/env python3
#chapter_7.py - Detects strong passwords.
import pyperclip, re
strong_pwd_regex = re.compile(r'(A-Za-z)(0-9)+{8,}')
password = str(pyperclip())
matches = []
for groups in strong_pwd_regex.findall(password):
if len(matches) < 8:
print('Password needs to be at least 8 characters long.')
答案 0 :(得分:0)
您可以使用此正则表达式:
^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$
此正则表达式将强制执行以下规则:
?=.*?[A-Z]
)?=.*?[a-z]
)?=.*?[0-9]
)?=.*?[#?!@$%^&*-]
)