day16正規表示式練習

2021-10-25 01:26:38 字數 2307 閱讀 7913

1.使用者名稱匹配

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

​ 2.不能以數字開頭

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

username =

input

("請輸入使用者名稱:"

)re_str = r'[a-za-z_][0-9a-za-z_]'

result = re.fullmatch(re_str, username)

if result:

print

(f'合法'

)else

:print

(f'不合法'

)

密碼匹配

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

​ 2.必須以字母開頭

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

password =

input

("請輸入密碼:"

)re_str = r'(?i)[a-z][^!@#¥%^&*]'

result = re.fullmatch(re_str, password)

if result:

print

(f'合法'

)else

:print

(f'不合法'

)

num =

input()

re_str = r'((([1-9]?\d)|(1\d)|(2[0-4]\d)|(25[0-5]))\.)(([1-9]?\d)|(1\d|(2[0-4]\d)|(25[0-5]))'

result = re.fullmatch(re_str, num)

if result:

print

(f'合法'

)else

:print

(f'不合法'

)

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

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

input

("請輸入資料:"

)re_str = r'r'

-?\d+\.

-?\d+

''result = re.findall(re_str, num)

print

(result)

i =0

for x in result:

i +=

float

(x)print

(i)# print(reduce(lambda x, y: x+y, result, 0))

驗證輸入內容只能是漢字

content =

input

("請輸入漢字:"

)re_str = r'[\u4e00-\u9fa5]*'

result = re.fullmatch(re_str, content)

print

(result)

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

re_str = r'[-+]?(0|[1-9]\d*|0\.\d+|[1-9]\d*\.\d+)'

print

(re.fullmatch(re_str,

'3.14'

))

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

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

re_str =

'[1-9]\d-((0?[469]|11)-(0?[1-9]|[12]\d|30)|(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01])|(0?2-(0?[1-9]|[12]\d)))'

print

(re.fullmatch(re_str,

'2010-2-29'

))

str1 =

input

("請輸入內容:"

)re_str = r'[幹]*|****|ass|fw|nt|nmsl'

print

(re.sub(re_str,

'*', str1)

)

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.必須以字母...