찾아 바꾸기와 정규식 실전 패턴 모음
텍스트 정리에 바로 쓰는 JavaScript 정규식 찾아 바꾸기 패턴 13가지. 날짜 형식 변환, 전화번호 마스킹, 괄호 내용 삭제, 줄 끝 공백 제거와 $1 그룹 참조 사용법을 설명합니다.
찾아 바꾸기 는 일반 모드와 정규식 모드를 모두 지원합니다. 일반 모드는 입력한 글자를 그대로 찾고, 정규식 모드는 패턴으로 찾습니다. 이 글은 정규식 모드의 규칙과 자주 쓰는 패턴을 정리합니다.
이 도구의 정규식 규칙
- 문법은 브라우저의 JavaScript 정규식입니다.
g(모두 바꾸기),m(여러 줄),u(유니코드) 플래그가 자동으로 붙습니다. '대소문자 무시'를 켜면i가 더해집니다.m플래그 때문에^와$는 텍스트 전체가 아니라 각 줄의 시작과 끝에 맞습니다.u플래그 때문에 불필요한 역슬래시는 오류가 됩니다. 예를 들어\:는 쓸 수 없고:로 적어야 합니다.\p{L}같은 유니코드 속성은 쓸 수 있습니다.- 바꿀 내용에서
$1,$2는 괄호 그룹,$&는 일치한 전체,$$는$글자 하나입니다.\n은 줄바꿈,\t는 탭이 됩니다. - 패턴에 오류가 있으면 그 단계는 입력을 바꾸지 않고 오류를 표시합니다.
\s는 줄바꿈에도 일치합니다. 줄을 넘지 않게 공백만 찾으려면[ \t]를 쓰세요.
실전 패턴
아래는 '찾을 내용 → 바꿀 내용' 형식입니다. 바꿀 내용이 '(비움)'이면 칸을 비워 두세요.
1. 날짜 형식 바꾸기
(\d{4})-(\d{2})-(\d{2}) → $1.$2.$3
2026-09-23 → 2026.09.23
순서를 바꾸려면 $3/$2/$1 처럼 그룹 번호의 위치를 바꿉니다.
2. 휴대전화 번호 가운데 가리기
(01[016789])-?(\d{3,4})-?(\d{4}) → $1-****-$3
010-1234-5678 → 010-****-5678 01098765432 → 010-****-5432
3. 이메일 앞부분 가리기
\b([A-Za-z0-9._%+-]{2})[A-Za-z0-9._%+-]*@ → $1***@
hong.gildong@example.com → ho***@example.com
4. 괄호와 그 안의 내용 지우기
\s*\([^)]*\) → (비움)
서울(본사) 부산 (지사) → 서울 부산
괄호가 겹쳐 있는 ((a)) 같은 구조는 한 번에 지워지지 않을 수 있습니다.
5. 줄 끝 공백 지우기
[ \t]+$ → (비움)
6. 세 줄 이상 빈 줄을 한 줄로
\n{3,} → \n\n
7. 숫자의 천 단위 쉼표 지우기
(\d),(?=\d{3}\b) → $1
1,234,567원 → 1234567원
8. URL의 쿼리·해시 지우기
(https?:\/\/[^\s?#]+)[?#]\S* → $1
https://example.com/page?utm_source=a#top → https://example.com/page
9. 채팅 기록 앞의 시각 지우기
^\[?\d{1,2}:\d{2}(?::\d{2})?\]?[ \t]* → (비움)
[12:30] 안녕하세요 → 안녕하세요
10. '성, 이름' 순서 바꾸기
^([^,\n]+),[ \t]*(.+)$ → $2 $1
Kim, Minsu → Minsu Kim
11. 반복된 단어 하나로
\b(\w+)[ \t]+\1\b → $1 ('대소문자 무시'를 켜면 The the 도 잡습니다)
12. 한글과 영문 사이 띄우기
(\p{Script=Hangul})([A-Za-z]) → $1 $2
한글abc → 한글 abc
13. 숫자를 괄호로 감싸기
\d+(?:\.\d+)? → [$&]
자주 하는 실수
- 점(.)을 그대로 쓰기: 정규식에서
.는 아무 글자 하나를 뜻합니다. 마침표나 도메인의 점을 찾으려면\.로 적으세요.example.com은exampleXcom에도 일치합니다. - 욕심 많은 .\*:
<.*>는 한 줄에서 처음<부터 마지막>까지를 통째로 잡습니다.<b>x</b> <i>y</i>에 적용하면 글자까지 모두 사라집니다. 태그 하나씩 잡으려면<[^>]*>나<.*?>를 씁니다. - 바꿀 내용의 $: 정규식 모드에서 바꿀 내용에 가격 표시처럼
$를 넣으려면$$로 적어야 합니다. 일반 모드에서는$가 글자 그대로 들어갑니다. - 특수 문자를 글자로 찾기:
( ) [ ] + ? *를 찾으려면 앞에 역슬래시를 붙입니다. 기호가 많다면 정규식을 끄고 일반 모드로 찾는 편이 간단합니다.
여러 줄을 한 번에 다루기
찾을 내용에 \n 을 넣으면 줄바꿈 자체를 찾을 수 있습니다. 예를 들어 ,\n → , 는 쉼표로 끝나는 줄을 다음 줄과 합칩니다. 줄 전체를 지우는 것이 목적이라면 정규식보다 줄 필터 가 간단합니다. 문장 단위로 줄을 나누는 일은 줄바꿈 추가(나누기) 의 '문장 끝' 기준이 더 안전합니다.
순서가 중요합니다
찾아 바꾸기 단계는 한 파이프라인에 여러 개 넣을 수 있고 위에서부터 차례로 적용됩니다. 앞 단계의 결과가 뒤 단계의 입력이 되므로, 공백을 먼저 정리해야 패턴이 맞는 경우가 많습니다. 앞뒤 공백 제거 과 연속 공백·탭 정리 를 앞에 두면 패턴을 단순하게 쓸 수 있습니다.
체크리스트
- 줄 단위 패턴은
^와$를 씁니다. - 줄을 넘지 않으려면
\s대신[ \t]를 씁니다. - 결과를 확인하고, 틀리면 단계를 끄고 패턴을 고칩니다.
최종 수정: 2026-09-23