정규식 실무 패턴 50선 — 이메일·전화·URL·한글·비밀번호 한 번에 정리
10분 읽기 · 꿀도구 에디터 · 2026.04.22

"이메일 검증 정규식이 뭐였더라…"
정규식(Regular Expression)은 문자열 패턴을 표현하는 미니 언어입니다. 처음엔 암호같지만 50개 패턴만 외워도 실무 90%를 커버할 수 있습니다. 이번 글에서는 한국 환경에서 특히 자주 쓰는 정규식을 주제별로 정리합니다.
정규식 기본 기호 10개
| 기호 | 의미 | 예시 |
|---|---|---|
| . | 아무 한 글자 | a.c → abc, a1c |
| * | 0회 이상 | ab* → a, ab, abbbb |
| + | 1회 이상 | ab+ → ab, abb |
| ? | 0 or 1회 | colou?r |
| {n,m} | n~m회 | \d{3,4} |
| [abc] | a, b, c 중 하나 | [aeiou] |
| ^ | 문자열 시작 | ^Hello |
| $ | 문자열 끝 | end$ |
| \d | 숫자 [0-9] | \d+ |
| \w | 영문·숫자·_ | \w{3,} |
① 이메일·연락처 검증 10가지
1. 이메일 (일반)
/^[\w.+-]+@[\w-]+\.[\w.-]+$/
2. 이메일 (엄격 RFC 5322 간소화)
/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/
3. 휴대폰 (010으로 시작, 하이픈 허용)
/^010-?\d{3,4}-?\d{4}$/
4. 일반 전화 (02, 031, 051 등)
/^(02|0[3-6]\d)-?\d{3,4}-?\d{4}$/
5. 국제 전화 (E.164)
/^\+[1-9]\d{1,14}$/
6. 팩스 (국내)
/^(0\d{1,2})-?(\d{3,4})-?(\d{4})$/
7. 내선 (ext.123)
/(ext|extension|내선)\.?\s*(\d+)/i
8. 주민등록번호 (단순)
/^\d{6}-?[1-4]\d{6}$/
9. 사업자등록번호
/^\d{3}-?\d{2}-?\d{5}$/
10. 외국인등록번호
/^\d{6}-?[5-8]\d{6}$/
② 웹·URL 검증 10가지
11. URL (http/https)
/^https?:\/\/[\w.-]+(\.[\w.-]+)+[\w\-._~:/?#[\]@!'()*+,;=.]+$/
12. URL (도메인만)
/^https?:\/\/([\w-]+\.)+[\w-]{2,}(\/.*)?$/
13. IPv4
/^(\d{1,3}\.){3}\d{1,3}$/
14. IPv6
/^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$/
15. MAC 주소
/^([0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}$/
16. 도메인 (최상위)
/^([\w-]+\.)+[\w-]{2,}$/
17. YouTube 영상 ID
/(?:youtube\.com\/watch\?v=|youtu\.be\/)([\w-]{11})/
18. 해시태그 (#로 시작)
/#[\w가-힣]+/
19. 멘션 (@username)
/@[\w-]+/
20. 쿼리스트링 키=값
/([^&=]+)=([^&]*)/g
③ 한글·언어 검증 10가지
21. 한글만 (가~힣)
/^[가-힣]+$/
22. 한글·공백
/^[가-힣\s]+$/
23. 한글 자모만 (ㄱ·ㅏ·ㄲ)
/^[ㄱ-ㅎㅏ-ㅣ]+$/
24. 완성형 한글만 (자모 제외)
/^[가-힣]+$/
25. 한자
/[\u4e00-\u9fa5]+/
26. 영문만
/^[a-zA-Z]+$/
27. 영문+숫자
/^[a-zA-Z0-9]+$/
28. 한글·영문·숫자
/^[가-힣a-zA-Z0-9]+$/
29. 특수문자 포함
/[!@#$%^&*(),.?":{}|<>]/
30. 공백(스페이스·탭·개행)
/\s+/
④ 비밀번호·보안 10가지
31. 비밀번호 (영문·숫자 8~16자)
/^[a-zA-Z0-9]{8,16}$/
32. 비밀번호 (영문·숫자·특수 8~20자)
/^(?=.*[a-zA-Z])(?=.*\d)(?=.*[!@#$%^&*])[\w!@#$%^&*]{8,20}$/
33. 강한 비밀번호 (대소문자·숫자·특수)
/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*]).{10,}$/
34. 아이디 (영문으로 시작, 4~20자)
/^[a-zA-Z][a-zA-Z0-9_]{3,19}$/
35. 신용카드 16자리
/^\d{4}-?\d{4}-?\d{4}-?\d{4}$/
36. VISA 카드
/^4\d{3}(-?\d{4}){3}$/
37. 마스터카드
/^5[1-5]\d{2}(-?\d{4}){3}$/
38. JWT 토큰
/^[\w-]+\.[\w-]+\.[\w-]+$/
39. Base64
/^[A-Za-z0-9+/]+={0,2}$/
40. 16진수 색상 코드
/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/
⑤ 숫자·날짜·주소 10가지
41. 숫자만
/^\d+$/
42. 정수(음수 포함)
/^-?\d+$/
43. 소수 (3.14)
/^-?\d+\.\d+$/
44. 날짜 YYYY-MM-DD
/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/
45. 시간 HH:MM
/^([01]\d|2[0-3]):[0-5]\d$/
46. 우편번호(5자리)
/^\d{5}$/
47. 자동차 번호판
/^\d{2,3}[가-힣]\d{4}$/
48. 금액(3자리 콤마)
/^\d{1,3}(,\d{3})*$/
49. 파일 확장자
/\.(jpg|jpeg|png|gif|webp)$/i
50. 한국 사업자 세금계산서 번호
/^\d{3}-?\d{2}-?\d{5}$/
정규식 사용 시 3가지 주의
- 과한 엄격함 금지 — 이메일은 RFC 5322 완벽 준수보다 "@+도메인" 정도로 충분. 오탐 방지
- 성능 — Catastrophic Backtracking 주의 (중첩 *, + 피하기)
- 유니코드 — JavaScript는 `u` 플래그, Python은 `re.UNICODE` 사용
언어별 사용법
// JavaScript
const re = /^\d+$/
re.test('123') // true
# Python
import re
bool(re.match(r'^\d+
꿀도구 - 무료 온라인 도구 모음
연봉 실수령액 계산기, QR코드 생성기, 단위 변환기, 글자수 세기 등 167개 이상의 무료 온라인 유틸리티를 제공합니다. 회원가입 없이 바로 사용하세요.
인기 도구
- 사다리타기 - 인원수를 정하고 공정한 사다리 게임을 즐기세요. 회식 장소 정하기, 벌칙 정하기, 당번 정하기 등에 활용하세요.
- 로또번호 생성기 - 로또 6/45 자동 번호를 생성하는 무료 프로그램입니다. 여러 세트 생성과 번호 복사를 지원합니다.
- 퍼센트 계산기 - 퍼센트(%)를 쉽고 빠르게 계산. 할인 가격 계산, 증감률 계산, 비율 구하기를 지원합니다.
- BMI 계산기 - 키와 몸무게로 BMI(체질량지수)를 계산하고 대한비만학회 기준으로 비만도를 판정합니다.
- D-Day 계산기 - 두 날짜 사이의 일수를 계산합니다. 수능 디데이, 100일 기념일, 1주년 등 중요한 날 확인.
- 단위 변환기 - 길이, 무게, 넓이, 부피, 온도 등 모든 단위를 즉시 변환하는 무료 도구입니다.
- 연봉 실수령액 - 2026년 기준 연봉 실수령액 계산. 4대보험료와 소득세 자동 공제하여 월급을 확인하세요.
- 글자수 세기 - 글자수, 공백 포함/제외, 바이트 수, 단어 수, 줄 수를 실시간 계산하는 무료 도구입니다.
- QR코드 생성기 - URL, 텍스트, Wi-Fi, 연락처(vCard), 위치, SMS 메시지까지 6가지 유형의 QR코드를 무료로 생성합니다. 12가지 색상 프리셋, 200~512px 크기 조절, PNG·SVG 벡터 다운로드 지원. 명함·포스터·메뉴판·매장·이벤트용 예쁜 QR코드 제작에 최적화.
- JSON 포맷터 - JSON 데이터를 보기좋게 정리(Prettify)하고 유효성을 검증하는 무료 도구입니다.
- MBTI 검사 - 48문항 정밀 MBTI 성격유형 검사와 상세 분석 리포트를 제공합니다.
- 아파트 실거래가 - 국토교통부 공식 데이터 기반 아파트 매매/전세 실거래가를 지역별로 조회합니다. 시세차트, 평당가 자동 계산, 면적대 필터, 지도 뷰 제공.