day 16正規表現ジョブ
正規表現を使用して、次の操作を行います.
1.ユーザー名の照合
要求:1.ユーザー名にはアルファベットの下線のみが含まれます
2.数字で始まることはできません
3.⻓度は6~16ビットの範囲であるパスワード一致 要求:1.含めることはできません!@#¥%^&*これらの特殊記号
2.アルファベットで始まる必要があります
3.⻓度は6~12ビットの範囲である ipv 4フォーマットのipアドレスマッチングプロンプト:IPアドレスの範囲は0.0.0.0-255.255.255.255.255 です.は、ユーザ入力データからの数値(正負の数値を含む整数と小数も含む)を抽出する、 を求める.検証入力内容は漢字 のみである.整数または小数(正数および負数を含む) に一致する.正規表現を使用して文字列内のすべての日付情報を取得し、年月日フォーマットに一致します:2018-12-6
注意年の範囲は1~9999、月の範囲は1~12、日の範囲は130または131または1~29(閏年は考慮しない) 置換文字列の不良内容:入力された内容の不良内容をすべて*(王者栄光チャット要求参照) に置換する.
1.ユーザー名の照合
要求:1.ユーザー名にはアルファベットの下線のみが含まれます
2.数字で始まることはできません
3.⻓度は6~16ビットの範囲である
re_obj = re.compile(r'[^\d][\da-zA-Z_]{5,15}')
print(re_obj.fullmatch('asdsadasas_asd12'))
2.アルファベットで始まる必要があります
3.⻓度は6~12ビットの範囲である
re_obj = re.compile(r'[a-zA-Z][^!@#¥%^&*]{5,11}')
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+'))
注意年の範囲は1~9999、月の範囲は1~12、日の範囲は130または131または1~29(閏年は考慮しない)
str1 = '2019 5 21 '
print(fullmatch(r'[1-9][0-9]{1,3} (1[0-2]|[0-9]) ([1-2]?[0-9]|30|31) ', str1))
str1 = ' '
str2 = sub(r' ','*', str1)
print(str2)