[typescript] 정규 표현식을 사용하여 IP 주소 형식 검증하는 방법

IP 주소 형식을 검증하려면 정교한 검사 기준을 사용하여 문자열이 올바른 형식의 IP 주소인지 확인해야 합니다. 이를 위해 TypeScript에서 정규 표현식을 활용하여 IP 주소를 유효성 검사할 수 있습니다. 이번 블로그에서는 TypeScript에서 정규 표현식을 사용하여 IP 주소의 유효성을 검사하는 방법에 대해 알아보겠습니다.

IP 주소 형식 검증을 위한 정규 표현식 만들기

아래의 TypeScript 코드는 정규 표현식을 사용하여 기본적인 IPv4 주소 형식을 검증하는 예제입니다.

const ipv4Regex = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;

function validateIPv4Address(ip: string): boolean {
  return ipv4Regex.test(ip);
}

console.log(validateIPv4Address('192.168.0.1')); // true
console.log(validateIPv4Address('256.0.0.1')); // false

위 코드에서 ipv4Regex 변수는 IPv4 주소 형식을 나타내는 정규 표현식을 포함하고 있습니다. validateIPv4Address 함수는 이 정규 표현식을 사용하여 입력된 IP 주소의 유효성을 검사하며, 유효한 경우 true를 반환합니다.

IPv6 주소 형식 검증

IPv6 주소를 검증하려면 다음과 같이 정규 표현식을 사용할 수 있습니다.

const ipv6Regex = /^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$/;

function validateIPv6Address(ip: string): boolean {
  return ipv6Regex.test(ip);
}

console.log(validateIPv6Address('2001:0db8:85a3:0000:0000:8a2e:0370:7334')); // true
console.log(validateIPv6Address('2001:0db8:85a3:0000:0000:8a2e:0370:')); // false

ipv6Regex 변수는 IPv6 주소 형식을 검증하는 데 사용됩니다. validateIPv6Address 함수는 이 정규 표현식을 활용하여 IPv6 주소의 유효성을 검사합니다.

결론

위 예제에서 보듯이 TypeScript에서 정규 표현식을 사용하여 IP 주소의 유효성을 검사할 수 있습니다. 정규 표현식을 적절히 활용하면 다양한 유형의 IP 주소를 신속하고 효율적으로 유효성 검사할 수 있습니다.

참고문헌: