본문으로 건너뛰기

정규식 테스트, 패턴 작성부터 실시간 확인까지

회원가입 폼에 이메일 검증을 넣어야 하는데, 정규식을 어떻게 써야 하는지 검색부터 시작한다. 복사해서 붙여넣긴 했는데 실제로 맞는 패턴인지 확신이 없다. 정규식은 작성보다 검증이 더 중요하다.

정규식 기본 문법 요약

기호의미예시
.아무 문자 1개a.c → abc, a1c
*앞 문자 0개 이상ab*c → ac, abc, abbc
+앞 문자 1개 이상ab+c → abc, abbc (ac는 불가)
\d숫자 (0~9)\d{3} → 123, 456
\w알파벳, 숫자, _\w+ → hello, user_1
[ ]문자 클래스[a-z] → 소문자 1개
^ / $시작 / 끝^hello$ → 정확히 hello만

자주 쓰는 패턴 예시

이메일 검증

[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}

@ 앞뒤에 영문, 숫자, 일부 특수문자를 허용하고, 마지막에 도메인 확장자(.com, .kr 등)가 오는지 확인한다.

한국 휴대전화 번호

01[016789]-?\d{3,4}-?\d{4}

010, 011, 016, 017, 018, 019로 시작하고 하이픈은 있어도 없어도 매칭된다.

한글만 허용

[가-힣]+

완성형 한글(가~힣)만 매칭한다. 자음이나 모음만 따로 입력된 건 걸러낸다.

패턴이 맞는지 확인하는 법

정규식은 한 글자만 빠져도 의도와 다르게 작동한다. 정규식 테스터에 패턴을 넣고 테스트 문자열을 입력하면 매칭되는 부분이 실시간으로 하이라이트 된다. 매치 개수와 캡처 그룹까지 확인할 수 있어서, 패턴이 의도한 대로 동작하는지 코드에 넣기 전에 검증할 수 있다.

TIP 이메일, URL, 전화번호 같은 프리셋 패턴이 기본 제공된다. 처음부터 작성하기보다 프리셋을 기반으로 수정하는 게 실수를 줄인다.

정규식은 외워서 쓰는 게 아니라, 만들고 테스트하고 수정하는 과정을 반복하는 거다. 패턴이 복잡해질수록 테스트 도구 없이 검증하는 건 무모하다.

🚀
진법 변환기 바로 사용하기
지금 바로 무료로 이용해보세요!
도구 사용하기 →