[python] 정규표현식을 이용한 전화번호 형식인 문자열 검증

정규표현식(Regular Expression)은 문자열 패턴을 검증하거나 추출하기 위한 강력한 도구입니다. 이번에는 파이썬을 사용하여 전화번호 형식인 문자열을 검증하는 방법에 대해 알아보겠습니다.

전화번호 형식

전화번호는 일반적으로 아래와 같은 형식을 가지고 있습니다.

따라서 전화번호는 3개의 숫자로 시작하고, ‘-‘로 구분되어 4개의 숫자와 다시 ‘-‘로 구분되어 4개의 숫자로 끝나야 합니다.

코드 예제

import re

def validate_phone_number(phone_number):
    pattern = r'^\d{3}-\d{4}-\d{4}$'  # 정규표현식 패턴
    if re.match(pattern, phone_number):
        return True
    else:
        return False

# 전화번호를 입력받아 검증하는 예제
phone_number = input("전화번호를 입력하세요: ")
if validate_phone_number(phone_number):
    print("올바른 전화번호 형식입니다.")
else:
    print("잘못된 전화번호 형식입니다.")

위의 코드는 정규표현식을 사용하여 전화번호 형식을 검증하는 함수인 validate_phone_number와 그 함수를 사용하는 예제 코드입니다.

코드 설명

  1. validate_phone_number 함수는 예제로 입력받은 전화번호를 인자로 받습니다.
  2. pattern 변수에 정규표현식 패턴을 정의합니다. ^$는 문자열의 시작과 끝을 의미하며, \d는 숫자를 의미합니다. 중괄호 {} 안에는 해당 숫자의 개수를 지정합니다.
  3. re.match() 함수를 사용하여 정규표현식 패턴과 전화번호를 비교합니다.
  4. 비교 결과에 따라 검증된 전화번호라면 True를 반환하고, 그렇지 않으면 False를 반환합니다.
  5. 예제 코드에서는 사용자로부터 전화번호를 입력받아 validate_phone_number 함수를 호출하고, 최종적으로 올바른 형식인지를 출력합니다.

참고 자료