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