yyyy/mm/dd 형식으로 표현된 날짜 검사
1.연도는 4자리숫자로 제한(1000~9999)
2.월은 1월~12월, 일은 1일~31까지 가능
2022/08/08
1000/01/01
9999/12/31
900/02/02
12000/10/26
2021/13/01
2023/2/02
2024/06/3
2023/06/35
import re
datas=[
'2022/08/08',
'1000/01/01',
'9999/12/31',
'900/02/02',
'12000/10/26',
'2021/13/01',
'2023/2/02',
'2024/06/3',
'2023/06/35'
]
regex ='^\d{4}/(0[1-9]|1[0-2])/(0[1-9]|[12][0-9]|3[01])$'
for data in datas:
matchObj = re.match(regex, data)
result = (lambda x : True if x != None else False)(matchObj)
print(f'{data} {result}')
결과 화면
이메일 형식 검사 정규표현식 작성
startcoding@maver.com
start-coding@maver.com
start_coding@maver.co.kr
startcoding@k-mail.com
@maver.com
startcoding?@k-mail.com
startcoding@k-mail
startcoding@maver
# 실습문제 2번
import re
regex =re.compile('^[\w-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$')
datas= [
'startcoding@maver.com',
'start-coding@maver.com',
'start_coding@maver.co.kr',
'startcoding@k-mail.com',
'@maver.com',
'startcoding?@k-mail.com',
'startcoding@k-mail',
'startcoding@maver'
]
for data in datas:
matchObj = regex.match(data)
result = (lambda x : True if x != None else False)(matchObj)
print(f'{data} {result}')
결과 화면