이메일 주소가 문자열이라고 가정합니다. 다음 조건에 따라 이것이 유효한지 여부를 확인해야 합니다. -
-
형식은 [email protected] 형식이어야 합니다.
-
사용자 이름에는 대문자와 소문자, 숫자, 대시 및 밑줄만 사용할 수 있습니다.
-
회사 이름에는 대문자와 소문자와 숫자만 사용할 수 있습니다.
-
도메인은 대문자와 소문자만 포함할 수 있습니다.
-
확장자의 최대 길이는 3입니다.
정규식을 사용하여 메일 주소를 확인할 수 있습니다. re 라이브러리를 가져와 정규식을 사용할 수 있습니다. 패턴을 일치시키기 위해 re 라이브러리에서 match() 함수를 사용할 것입니다.
따라서 입력이 s ="[email protected]"과 같으면 출력은 True
가 됩니다.이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- pat :="[a-zA-Z0-9-_]로 시작하고 @ 다음으로 회사 이름은 [a-zA-Z0-9]로, 그리고 점으로 구분되고 [a-z]는 길이가 1에서 1까지입니다. 3 그리고 이것은 끝에 있습니다."
- pat가 s와 일치하면
- 참 반환
- 그렇지 않으면 False를 반환
예시
더 나은 이해를 위해 다음 구현을 살펴보겠습니다.
import re def solve(s): pat = "^[a-zA-Z0-9-_]+@[a-zA-Z0-9]+\.[a-z]{1,3}$" if re.match(pat,s): return True return False s = "[email protected]" print(solve(s))
입력
"[email protected]"
출력
True