python字串與正規表示式的應用上機

2021-09-28 18:19:47 字數 3499 閱讀 5107

一、實驗目的和要求

目的:

①了解字串編碼規則

②掌握字串索引

③掌握字串操作

④掌握正規表示式

二、 實驗資料記錄、處理及結果分析

(1)上課練習題,檢查字串是否合法,長度8-16位,支援大小寫

當輸入內容為helloworld#123764356788時:

當輸入內容為helloworld#6788時:

程式段為:

import re

defchecklen

(pwd)

:return

len(pwd)

>=

8and

len(pwd)

<=

16def

checkcontainupper

(pwd)

: pattern = re.

compile

('[a-z]+'

) match = pattern.findall(pwd)

if match:

return

true

else

:return

false

defcheckcontainnum

(pwd)

: pattern = re.

compile

('[0-9]+'

) match = pattern.findall(pwd)

if match:

return

true

else

:return

false

defcheckcontainlower

(pwd)

: pattern = re.

compile

('[a-z]+'

) match = pattern.findall(pwd)

if match:

return

true

else

:return

false

defchecksymbol

(pwd)

: pattern = re.

compile

('([^a-z0-9a-z])+'

) match = pattern.findall(pwd)

if match:

return

true

else

:return

false

defcheckpassword

(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)

defmain()

:if checkpassword(

'helloworld#6788'):

#輸入內容

print

('檢測通過'

)else

:print

('檢測未通過'

)if __name__ ==

'__main__'

: main(

)

(2)寫出程式的執行結果。

(3)下面是列印圖實驗6-1所示的金字塔圖案的程式,請補充程式。

(4)利用正規表示式判斷字串是否只有小寫字母或數字。

import re

s='1234hjijsbdvysic'

if re.match(

'^[0-9a-z]+$'

,s):

print

('符合要求'

)else

:print

('不符合要求'

)

當s等於12345abc時:

當s等於1234hjijsbdvysic時:

因為並沒有對字串設定長度,所以依然是符合要求。

三、討論、心得

報錯:

修改後正確。

心得體會:

compile是乙個語法錯誤的正規表示式的時候,其實可以得到詳細的錯誤提示。python中re模組的debug flag可以幫助我們快速檢查自己所寫的正則中的錯誤。

Python 字串與正規表示式

alist list range 1 1001 blist list map str alist cstr join blist dstr cstr str sum range 1 1001 print dstr open text.txt w write dstr import os print ...

字串與正規表示式

一.字串 1.格式化浮點數字 f 1.25 輸出 1.250000 預設輸出小數點後的6位數字 2f 1.25 輸出 1.25 精確到小數點後兩位 2.字串與日期的轉換 例 import time,datetime time.strftime y m d x time.localtime t tim...

python 字串匹配與正規表示式

這個方法將從string的pos下標處起嘗試匹配pattern 如果pattern結束時仍可匹配,則返回乙個match物件 如果匹配過程中pattern無法匹配,或者匹配未結束就已到達endpos,則返回none。pos和endpos的預設值分別為0和len string re.match 無法指定...