"""chapter 7 模式匹配和正規表示式
1 用import re 匯入正規表示式模組
2 用re.compile()函式建立乙個regex物件(記得使用原始字串)
3 向regex物件的search()方法傳入想查詢的字串,返回乙個match物件;或者findall()返回一組字串,包含被查詢字串中所有的匹配
notes:
1 花括號的貪心和非貪心匹配,re.compile(r'(ha)') 和 re.compile(r'(ha)?')
"""#
excise1 口令強度檢測
#1> 長度大於8個字元
#2> 包含大寫和小寫字元
#3> 至少有1位數字
import
redef
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):
ifpasswdcheck(passstr):
print("
密碼%s滿足要求,密碼設定成功!
" %passstr)
break
else
:
print("
密碼不滿足要求,至少8個字元且包含大小字母和數字,請重新輸入")
passstr = input("
請輸入要設定的密碼:")
count += 1
if count >=3:
print("
已經超過最大嘗試次數3次,程式退出!
")
python正規表示式元字元 正規表示式
字元 描述將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個 向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結束...
Python 正規表示式
1.在python中,所有和正規表示式相關的功能都包含在re模組中。2.字元 表示 字串的末尾 如 road 則表示 只有當 road 出現在乙個字串的尾部時才會匹配。3.字元 表示 字元中的開始 如 road 則表示 只有當 road 出現在乙個字串的頭部時才會匹配。4.利用re.sub函式對字串...
Python正規表示式
學習python自然而然就不得不面對正規表示式這個難題。當初在沒有學習python之前,自己也曾經嘗試著學習過正規表示式,但是那時候感覺很麻煩,很難懂,結果就是不了了之。但是現在學習python我用的書是 python基礎教程 第二版 這本書中對re模組的講解很簡單易懂,內容不多但起碼把人領進門了,...