python使用正则表达式检测密码强度源码分享

 更新时间:2014年06月11日 10:03:49   作者:  
客户系统升级,要求用户密码符合一定的规则,即:包含大小写字母、数字、符号,长度不小于8,于是先用python写了个简单的测试程序:

复制代码 代码如下:

#encoding=utf-8
#-------------------------------------------------------------------------------
# Name:        模块1
# Purpose:
#
# Author:      Administrator
#
# Created:     10-06-2014
# Copyright:   (c) Administrator 2014
# Licence:     <your licence>
#-------------------------------------------------------------------------------
import re
def checklen(pwd):
    return len(pwd)>=8
def checkContainUpper(pwd):
    pattern = re.compile('[A-Z]+')
    match = pattern.findall(pwd)
    if match:
        return True
    else:
        return False
def checkContainNum(pwd):
    pattern = re.compile('[0-9]+')
    match = pattern.findall(pwd)
    if match:
        return True
    else:
        return False
def checkContainLower(pwd):
    pattern = re.compile('[a-z]+')
    match = pattern.findall(pwd)
    if match:
        return True
    else:
       return False
def checkSymbol(pwd):
    pattern = re.compile('([^a-z0-9A-Z])+')
    match = pattern.findall(pwd)
    if match:
        return True
    else:
        return False
def checkPassword(pwd):
    #判断密码长度是否合法
    lenOK=checklen(pwd)
    #判断是否包含大写字母
    upperOK=checkContainUpper(pwd)
    #判断是否包含小写字母
    lowerOK=checkContainLower(pwd)
    #判断是否包含数字
    numOK=checkContainNum(pwd)
    #判断是否包含符号
    symbolOK=checkSymbol(pwd)
    print(lenOK)
    print(upperOK)
    print(lowerOK)
    print(numOK)
    print(symbolOK)
    return (lenOK and upperOK and lowerOK and numOK and symbolOK)

def main():
    if checkPassword('Helloworld#123'):
        print('检测通过')
    else:
        print('检测未通过')

if __name__ == '__main__':
    main()

平时用正则不多,不知道怎么写一个正则满足要求,用了比较笨的办法,谁知道一句正则检验的请赐教!

相关文章

  • 利用pandas合并多个excel的方法示例

    利用pandas合并多个excel的方法示例

    这篇文章主要介绍了利用pandas合并多个excel的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • 用Python代码来绘制彭罗斯点阵的教程

    用Python代码来绘制彭罗斯点阵的教程

    这篇文章主要介绍了用Python代码来绘制彭罗斯点阵的教程,核心代码主要就是一行简单的lambda匿名函数,需要的朋友可以参考下
    2015-04-04
  • python离散建模之感知器学习算法

    python离散建模之感知器学习算法

    这篇文章主要介绍了python离散建模之感知器学习算法,感知机学习算法是支持向量机的基础,支持向量机通过核函数进行非线性分类,支持向量机也是感知机算法的延伸,下面就来介绍感知算法的相关内容,需要的小伙伴可以参考一下
    2022-02-02
  • 在django view中给form传入参数的例子

    在django view中给form传入参数的例子

    今天小编就为大家分享一篇在django view中给form传入参数的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Python异常学习笔记

    Python异常学习笔记

    这篇文章主要介绍了Python异常学习笔记,本文着重讲解了如何自定义一个异常,需要的朋友可以参考下
    2015-02-02
  • Python批量对word文档进行操作步骤

    Python批量对word文档进行操作步骤

    这篇文章主要介绍了Python批量对word文档进行操作,一步步逐步完成创建文档,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-02-02
  • 使用numpy.eye创建one-hot编码的实现

    使用numpy.eye创建one-hot编码的实现

    本文主要介绍了使用numpy.eye创建one-hot编码的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • Python调用腾讯API实现人脸身份证比对功能

    Python调用腾讯API实现人脸身份证比对功能

    这篇文章主要介绍了Python调用腾讯API进行人脸身份证比对,简单介绍了调用腾讯云API步骤,通过完整代码展示与结果,需要的朋友可以参考下
    2022-04-04
  • Python matplotlib画图实例之绘制拥有彩条的图表

    Python matplotlib画图实例之绘制拥有彩条的图表

    这篇文章主要介绍了Python matplotlib画图实例之绘制拥有彩条的图表,具有一定借鉴价值,需要的朋友可以参考下
    2017-12-12
  • Python pandas用法最全整理

    Python pandas用法最全整理

    在本篇文章里小编给大家分享的是关于Python pandas用法以及相关实例代码,需要的朋友们可以学习下。
    2019-08-08

最新评论