四时宝库

程序员的知识宝库

Python编程快速上手让繁琐工作自动化-正则表达式之强口令检测

需求描述

写一个函数,它使用正则表达式,确保传入的口令字符串是强口令。强口令的定义是:长度不少于8个字符,同时包含大写和小写字符,至少有一位数字。你可能需要用多个正则表达式来测试该字符串,以保证它的强度。

需求分析

可以利用4个正则表达式是否可以匹配到密码中是否包含大写、小写、数字以及整个密码字符串的重复次数。如果4个条件全都符合,那么就符合要求,否则不符合,重新输入。

代码展示

import re,sys

#正则

upperRegex = re.compile(r'[A-Z]+')

lowerRegex = re.compile(r'[a-z]+')

numRegex = re.compile(r'\d+')

lenRegex = re.compile(r'[\w\d]{8,}')

def stringPasscheck():

while True:

print('请输入一个密码,密码的要求长度大于等于8位,必须包含大小写字母和最少一个数字。')

inputPass = input('请输入密码(q:退出):')

if inputPass != 'q':

if upperRegex.search(inputPass) and lowerRegex.search(inputPass) and numRegex.search(inputPass) and lenRegex.search(inputPass):

print('密码符合强度要求。')

sys.exit(0)

else:

print('密码符合不强度要求,请重试。')

else:

break

if __name__ == '__main__':

stringPasscheck()

执行结果

标签:正则测试 

作者:sishi88 , 分类:技术教程 , 浏览:10 , 评论:0

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接