[python] 정규표현식을 이용한 IP 주소 형식인 문자열 검증

IP 주소는 네트워크 상에서 컴퓨터를 식별하기 위해 사용되는 고유한 주소입니다. IP 주소는 보통 “x.x.x.x” 형식으로 표현되며, 각 부분은 0부터 255 사이의 숫자로 구성됩니다. 이번 포스트에서는 파이썬의 정규표현식을 사용하여 주어진 문자열이 IP 주소 형식에 맞는지 검증하는 방법을 알아보겠습니다.

정규표현식 패턴

다음은 IP 주소를 검증하는 정규표현식 패턴입니다.

^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$

이 정규표현식은 다음과 같은 구성으로 이루어져 있습니다.

파이썬 코드 예제

이제 위의 정규표현식 패턴을 이용하여 IP 주소 형식인 문자열을 검증하는 파이썬 코드를 작성해보겠습니다.

import re

def validate_ip_address(ip_address):
    pattern = r'^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$'
    if re.match(pattern, ip_address):
        return True
    else:
        return False

위 코드에서 validate_ip_address 함수는 정규표현식 패턴을 이용하여 주어진 문자열이 IP 주소 형식에 맞는지 검증합니다. 함수는 True 또는 False 값을 반환합니다.

예제 사용

ip_address = "192.168.0.1"
if validate_ip_address(ip_address):
    print("올바른 IP 주소입니다.")
else:
    print("잘못된 IP 주소입니다.")

위의 예제 코드에서는 “192.168.0.1” 이라는 IP 주소가 주어지고, validate_ip_address 함수를 사용하여 해당 IP 주소가 올바른 형식인지 검증합니다.

참고 자료

이번 포스트에서는 파이썬의 정규표현식을 이용하여 IP 주소 형식인 문자열을 검증하는 방법을 살펴보았습니다. 정규표현식을 사용하면 간단하고 효율적으로 주어진 문자열이 특정한 패턴을 따르는지 검증할 수 있습니다.