url 유효성 검사에 정규 표현식 사용하기

Chaeyoung·2023년 12월 30일
0

url 유효성 검사에 정규 표현식 사용하기

URL 유효성 검사는 웹 개발에서 중요한 부분 중 하나이다. 대부분의 경우, 정규표현식을 사용하여 간단한 유효성 검사를 수행할 수 있다. 그러나 정규표현식은 모든 상황을 다루지 못할 수 있으므로 사용자는 이 한계를 이해하고 추가적인 확인 방법을 고려해야 한다.

URL 유효성 검사에 제공된 정규식은 대부분의 경우에 효과적일 수 있지만, 유효한 URL의 모든 인스턴스를 캡처하지 못할 수도 있다는 점에 유의해야한다.P 주소가 포함된 웹 주소, 라틴 문자가 아닌 문자 또는 FTP와 같은 대체 프로토콜이 포함될 수 있다.

URL 유효성 검사를 위한 정규표현식

URL 유효성 검사를 위한 간단한 정규표현식이다. 이 정규표현식은 대부분의 경우에 효과적일 수 있지만, 모든 상황을 다루지는 않는다. IP 주소, 라틴 문자가 아닌 문자, FTP와 같은 대체 프로토콜 등이 포함될 수 있다.
참고

const urlRegex = /^(https?|ftp):\/\/(-\.)?([^\s\/?\.#-]+\.?)+(\/[^\s]*)?$/i;

정규표현식 한계

이 정규표현식은 일반적인 경우에는 효과적이지만, 모든 상황을 다루지는 못한다. 사용자는 이 한계를 이해하고, 추가적인 검사 방법을 사용하여 정확성을 보장해야 한다. 예를 들어, IP 주소가 포함된 웹 주소나 라틴 문자가 아닌 문자를 다루기 위해 추가적인 확인 로직이 필요할 수 있다.

코드 예시

function isValidURL(url) {
  const urlRegex = /^(https?|ftp):\/\/(-\.)?([^\s\/?\.#-]+\.?)+(\/[^\s]*)?$/i;
  return urlRegex.test(url);
}

// 사용 예시
const url1 = "https://www.example.com";
const url2 = "ftp://ftp.example.com";
const url3 = "invalid-url";

console.log(isValidURL(url1)); // true
console.log(isValidURL(url2)); // true
console.log(isValidURL(url3)); // false

추가 확인 방법 활용하기

정규표현식을 사용한 기본적인 검사 후에도 사용자는 추가적인 확인 방법을 활용하여 정확성을 높일 수 있다. 예를 들어, 네트워크 요청을 통해 실제로 해당 URL이 존재하는지 확인하거나, 더 엄격한 검사를 위해 서드파티 라이브러리를 사용할 수 있다.

자신만의 추가 확인 방법을 도입하여 보다 신뢰성 있는 URL 유효성 검사를 수행할 수 있다.

다양한 url 매칭 방법들

Exact, Simple, Starts, Ends, Contains, Regular Expression 매치
참고링크

0개의 댓글