码迷,mamicode.com
首页 > 编程语言 > 详细

利用正则表达式实现python强口令检测

时间:2019-02-17 23:37:16      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:大于   port   dal   chapter   字符   match   regex   大写   sea   

"""
Chapter 7 模式匹配和正则表达式
1 用import re 导入正则表达式模块
2 用re.compile()函数创建一个Regex对象(记得使用原始字符串)
3 向Regex对象的search()方法传入想查找的字符串,返回一个Match对象;或者findall()返回一组字符串,包含被查找字符串中所有的匹配
notes:
1 花括号的贪心和非贪心匹配,re.compile(r‘(Ha){3,5}‘) 和 re.compile(r‘(Ha){3,5}?‘)
"""
# excise1 口令强度检测
#1> 长度大于8个字符
#2> 包含大写和小写字符
#3> 至少有1位数字
import  re

def passwdCheck(passwdstr):
    if len(passwdstr) < 8:
        return False

    regex1 = re.compile(r[a-z]+)
    regex2 = re.compile(r[A-Z]+)
    regex3 = re.compile(r\d+)
    if regex1.search(passwdstr) == None:
        return False
    elif regex2.search(passwdstr) == None:
        return False
    elif regex3.search(passwdstr) == None:
        return False
    else:
        return True

if __name__ == __main__:
    passstr = input("请输入要设置的密码:")

    count = 1
    while(count<3):
        if passwdCheck(passstr):
            print("密码%s满足要求,密码设置成功!" % passstr)
            break
        else:
            print("密码不满足要求,至少8个字符且包含大小字母和数字,请重新输入")
            passstr = input("请输入要设置的密码:")
        count += 1
    if count >=3:
        print("已经超过最大尝试次数3次,程序退出!")

 

利用正则表达式实现python强口令检测

标签:大于   port   dal   chapter   字符   match   regex   大写   sea   

原文地址:https://www.cnblogs.com/noxy/p/10393115.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!