본문으로 건너뛰기
ToolMug

정규식 테스터

정규표현식을 작성하면 입력하는 대로 모든 일치 항목이 강조 표시되고, 캡처 그룹을 확인하고 치환도 미리 해 볼 수 있어요. JavaScript 정규식 엔진을 사용하며, 너무 오래 걸리는 패턴은 페이지를 멈추게 하는 대신 중지돼요.

브라우저에서 실행 — 입력한 내용은 업로드되지 않아요

//g
자주 쓰는 패턴:
 
Contact: ada@example.com, grace.hopper@navy.mil
Servers: 10.0.0.1, 192.168.1.255
Date: 2026-09-26

사용 방법

  1. 슬래시 사이에 패턴을 입력하거나, 자주 쓰는 패턴 중 하나에서 시작하세요.
  2. 플래그(g, i, m, s, u, y)를 켜고 꺼서 일치 방식을 바꾸세요.
  3. 테스트할 텍스트를 붙여넣으세요. 일치 항목이 강조 표시되고 위치와 그룹이 목록으로 나와요.
  4. $1이나 $<name> 같은 바꿀 내용을 입력해 찾아 바꾸기 결과를 미리 보세요.

옵션 설명

g (전역)
첫 번째 일치에서 멈추지 않고 모든 일치 항목을 찾아요. 일치 목록에는 항상 모든 일치 항목이 표시되며, g는 치환에 영향을 줘요.
i (대소문자 무시)
대소문자를 구분하지 않고 일치시켜요.
m (여러 줄)
^와 $가 전체 텍스트가 아니라 각 줄의 시작과 끝에 일치해요.
s (dotAll)
.이 줄바꿈 문자에도 일치해요.
u (유니코드)
패턴을 유니코드 코드 포인트로 처리해서 \p{…} 속성 이스케이프를 쓸 수 있고 이모지도 올바르게 다뤄요.
y (sticky)
이전 일치가 끝난 정확한 위치에서만 일치를 찾아요.

빠른 참조

문법 일치 대상
\d \w \s 숫자, 단어 문자, 공백 문자
[abc] [^abc] [a-z] 이 중 하나, 이 중 아무것도 아닌 것, 범위
* + ? {2,5} 0회 이상, 1회 이상, 0 또는 1회, 2~5회
*? +? 게으른 수량자 — 가능한 한 적게
^ $ \b 시작, 끝, 단어 경계
(…) (?:…) (?<name>…) 캡처, 비캡처, 이름 있는 그룹
(?=…) (?!…) (?<=…) (?<!…) 전방 탐색, 부정 전방 탐색, 후방 탐색, 부정 후방 탐색
\p{L} \p{Script=Han} 모든 문자, 한자 (u 플래그 필요)

예시

패턴 (?<user>[\w.+-]+)@(?<domain>[\w-]+(?:\.[\w-]+)+)을 ada@example.com에 적용하면 user = ada, domain = example.com이 되고, 바꿀 내용 $<domain>/$<user>는 example.com/ada를 만들어요.

자주 묻는 질문

어떤 정규식 문법을 사용하나요?

브라우저에 구현된 JavaScript(ECMAScript 2024) 정규식이에요. 대부분의 문법은 PCRE, Python, Java와 같지만, 후방 탐색, 이름 있는 그룹, 유니코드 이스케이프는 엔진마다 조금씩 다르므로 실제로 쓸 언어에서도 테스트하세요.

패턴이 중지되었다는 메시지는 왜 나오나요?

a가 길게 이어진 문자열에 (a+)+$를 적용하는 경우처럼, 어떤 패턴은 엔진이 기하급수적으로 많은 조합을 시도하게 만들어요. 이를 치명적 백트래킹이라고 해요. 이 테스터는 백그라운드 스레드에서 실행되며 1.5초가 지나면 중지해요. 중첩된 수량자를 고쳐 쓰거나 더 구체적인 문자 클래스를 사용하세요.

치환할 때 캡처 그룹은 어떻게 쓰나요?

번호 그룹은 $1, $2…, 이름 있는 그룹은 $<name>, 전체 일치는 $&, 달러 기호 자체는 $$를 사용하세요.

입력한 텍스트가 어딘가로 전송되나요?

아니요. 일치 검사는 브라우저의 Web Worker에서 실행되므로, 테스트하는 로그와 데이터는 내 기기에 남아 있어요.

개인정보 보호

이 도구는 전적으로 브라우저에서 실행돼요. 파일과 텍스트는 기기에서 처리되며 서버로 업로드되지 않아요.

관련 도구