用于密码验证的python正则表达式

时间:2017-10-05 09:43:15

标签: python regex python-2.7

我有以下要求使用以下上下文验证密码

  • 至少一位数
  • 至少一个大写字母
  • 至少一个小写字母
  • 至少一个特殊字符[$ @#]

以下程序正在进行部分匹配,但不是完整的正则表达式

#!/usr/sfw/bin/python
import re
password = raw_input("Enter string to test: ")
if re.match(r'[A-Za-z0-9@#$]{6,12}', password):
    print "match"
else:
    print "Not Match"

使用中:

localhost@user1$ ./pass.py
Enter string to test: abcdabcd
match

正在评估错误的输出。任何人都可以建议我使用re.search吗?

1 个答案:

答案 0 :(得分:4)

这是正则表达式,至少有一个数字,一个大写字母,至少一个小写字母,至少一个特殊字符

import re
password = input("Enter string to test: ")
# Add any special characters as your wish I used only #@$
if re.match(r"^(?=.*[\d])(?=.*[A-Z])(?=.*[a-z])(?=.*[@#$])[\w\d@#$]{6,12}$", password):
    print ("match")
else:
    print ("Not Match")

希望这会帮助你...