이메일 주소는 많은 애플리케이션에서 사용되는 중요한 정보이기 때문에, 이메일 주소 형식이 유효한지를 검증하는 것은 중요한 작업입니다. 이 때 정규표현식을 사용하면 간단하게 이메일 주소의 형식을 검증할 수 있습니다. 이번 포스트에서는 Python에서 정규표현식을 이용하여 이메일 주소 형식인 문자열을 검증하는 방법에 대해 알아보겠습니다.
정규표현식 패턴
이메일 주소의 형식은 다음과 같습니다.
영숫자, 하이픈(-), 언더스코어(_), 마침표(.)로 이루어진 로컬 파트 + @ 기호 + 도메인 파트
로컬 파트(local part)는 @ 기호 이전에 올 수 있는 문자열이고, 도메인 파트(domain part)는 @ 기호 이후에 올 수 있는 문자열입니다.
import re
email_pattern = re.compile(r'^[\w.-]+@[a-zA-Z]+\.[a-zA-Z]+$')
위의 코드에서는 이메일 주소가 위의 형식과 일치하는지를 검사하는 정규표현식 패턴을 정의한 후, re.compile
함수를 사용하여 패턴을 컴파일합니다.
이메일 주소 검증 함수
def validate_email(email):
if email_pattern.match(email):
return True
else:
return False
위의 코드는 주어진 이메일 주소를 입력으로 받아, 해당 주소가 형식에 맞는지를 검증하는 함수입니다. email_pattern.match
함수를 이용하여 주어진 주소가 패턴과 일치하는지를 확인합니다.
사용 예제
email1 = "hello@example.com"
email2 = "invalid-email"
print(validate_email(email1)) # True
print(validate_email(email2)) # False
위의 코드는 validate_email
함수를 이용하여 주어진 두 이메일 주소를 검증한 결과를 출력하는 예제입니다. email1
은 유효한 이메일 주소 형식이므로 True
가 출력되고, email2
는 유효하지 않은 형식이므로 False
가 출력됩니다.
마무리
이번 포스트에서는 Python에서 정규표현식을 이용하여 이메일 주소 형식인 문자열을 검증하는 방법에 대해 알아보았습니다. 정규표현식을 사용하면 간단하게 이메일 주소의 형식을 검증할 수 있으며, 이를 활용하여 신뢰할 수 있는 애플리케이션을 개발하는 데 도움이 될 것입니다.
참조: Python Regular Expression HOWTO