day16正規表示式作業

2021-10-25 00:26:53 字數 1867 閱讀 3562

1.使用者名稱匹配

​ 要求: 1.使用者名稱只能包含數字 字母 下劃線

​ 2.不能以數字開頭

​ 3.⻓度在 6 到 16 位範圍內

re_obj = re.

compile

(r'[^\d][\da-za-z_]'

)print

(re_obj.fullmatch(

'asdsadasas_asd12'

))

密碼匹配

​ 要求: 1.不能包含!@#¥%^&*這些特殊符號

​ 2.必須以字母開頭

​ 3.⻓度在 6 到 12 位範圍內

re_obj = re.

compile

(r'[a-za-z][^!@#¥%^&*]'

)print

(re_obj.fullmatch(

'adsadasas_asd12'

))

re_obj = re.

compile

(r'([0-9]|1[0-9][0-9]|2[0-4][0-9]|255).([0-9]|1[0-9][0-9]|2[0-4][0-9]|255).([0-9]|1[0-9][0-9]|2[0-4][0-9]|255).([0-9]|1[0-9][0-9]|2[0-4][0-9]|255)'

)print

(re_obj.fullmatch(

'225.2.3.4'

))

提取使用者輸入資料中的數值 (數值包括正負數 還包括整數和小數在內) 並求和

例如:「-3.14good87nice19bye」 *****> -3.14 + 87 + 19 = 102.86
str1 =

'-3.14good-87.90nice19bye'

list1 = findall(r'[-]?\d+\.?\d+'

, str1)

sum1 =

sum(

[float

(x)for x in list1]

)print

(sum1)

驗證輸入內容只能是漢字

str1 =

input

('請輸入'

)re_str = fullmatch(r'^[\u4e00-\u9fa5]+$'

, str1)

print

(re_str)

匹配整數或者小數(包括正數和負數)

re_obj = re.compile(r'-3.14good-87.90nice19bye')

print(re_obj.fullmatch(r'[-]?\d+\.?\d+'))

使用正規表示式獲取字串中所有的日期資訊匹配年月日日期 格式:2018-12-6

注意年的範圍是1~9999, 月的範圍是1~12, 日的範圍是130或者131或者1~29(不考慮閏年)

str1 =

'2023年5月21日'

print

(fullmatch(r'[1-9][0-9]年(1[0-2]|[0-9])月([1-2]?[0-9]|30|31)日'

, str1)

)

str1 =

'你媽沒了'

str2 = sub(r'媽'

,'*'

, str1)

print

(str2)

Day16正規表示式作業

1.使用者名稱匹配 要求 1.使用者名稱只能包含數字 字母 下劃線 2.不能以數字開頭 3.度在 6 到 16 位範圍內 re str a za z a za z 0 9 print fullmatch re str,a23456 密碼匹配 要求 1.不能包含 這些特殊符號 2.必須以字母開頭 3....

day16正規表示式作業

1.使用者名稱匹配 要求 1.使用者名稱只能包含數字 字母 下劃線 2.不能以數字開頭 3.度在 6 到 16 位範圍內 1.re str w result fullmatch re str,8 a 2.re str d result fullmatch re str,a22希宇 3 print f...

day16正規表示式作業

1.使用者名稱匹配 要求 1.使用者名稱只能包含數字 字母 下劃線 2.不能以數字開頭 3.度在 6 到 16 位範圍內 re str r a za z 0 9a za z print fullmatch re str,a784121liu 密碼匹配 要求 1.不能包含 這些特殊符號 2.必須以字母...