中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用正則表達式怎么判斷密碼的強弱

發布時間:2021-03-30 16:50:38 來源:億速云 閱讀:117 作者:Leah 欄目:互聯網科技

使用正則表達式怎么判斷密碼的強弱?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

def password_level(password):
 weak = re.compile(r'^((\d+)|([A-Za-z]+)|(\W+))$')
 level_weak = weak.match(password)
 level_middle = re.match(r'([0-9]+(\W+|\_+|[A-Za-z]+))+|([A-Za-z]+(\W+|\_+|\d+))+|((\W+|\_+)+(\d+|\w+))+',password)
 level_strong = re.match(r'(\w+|\W+)+',password)
 if level_weak:
  print 'password level is weak',level_weak.group()
 else:
  if (level_middle and len(level_middle.group())==len(password)):
   print 'password level is middle',level_middle.group()
  else:
   if level_strong and len(level_strong.group())==len(password):
    print 'password level is strong',level_strong.group()

解釋一下

弱密碼:全是數字,符號,字母

中等密碼:數字加上符號,數字加上字母,字母加上符號

強密碼:三個混合.

我沒有區分大小寫,希望有興趣的可以自己寫寫.問題出現在\w上因為\w等價與[A-Za-z0-9_]所以前期通過\W不能匹配到包含下滑線的字符串

我們來看看中等密碼,數字加上符號或者字母或者_是一個組,字母加上符號或者下劃線或者符號是一個組,符號或者下劃線加上字母或者數字是一個組,我總覺得這個里面的代碼好像不對但是通過測試又沒發現什么不對的地方,就先用這個版本0.0.1吧

測試代碼

if __name__ == '__main__':
 passwords = ('11','aa','LL','1a','1_','a_','a1','_1','*a','1a_','1a<')
 for pw in passwords:
  password_level(pw)
'''----------------------output------------------------
#password level is weak 11
#password level is weak aa
#password level is weak LL
#password level is middle 1a
#password level is middle 1_
#password level is middle a_
#password level is middle a1
#password level is middle _1
#password level is middle *a
#password level is strong 1a_
#password level is strong 1a<
'''

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

栾城县| 罗江县| 邓州市| 崇明县| 北安市| 焉耆| 屏山县| 东阿县| 保亭| 湖南省| 富宁县| 青浦区| 博兴县| 宁南县| 临江市| 金门县| 灵川县| 隆德县| 饶阳县| 同江市| 湖州市| 桐乡市| 安溪县| 万荣县| 黄骅市| 大同县| 武功县| 湛江市| 新干县| 科技| SHOW| 化州市| 清原| 株洲县| 南靖县| 深水埗区| 瓮安县| 响水县| 昌都县| 东乌珠穆沁旗| 河曲县|