Regex Tester
Test regular expressions with real-time matching and group capture.
//g
Enter a pattern to start matching
이 정규식 테스터는 입력한 JavaScript 정규표현식을 샘플 텍스트에 적용해 일치하는 부분을 실시간으로 하이라이트합니다. 브라우저에 내장된 RegExp 엔진을 그대로 사용하므로, 여기서 보이는 동작이 실제 JavaScript나 TypeScript 코드에서의 동작과 정확히 같습니다. g, i, m, s, u, y 플래그를 체크박스로 켜고 끄면 결과가 즉시 갱신됩니다.
거의 맞는데 안 되는 패턴을 디버깅하거나, 캡처 그룹과 이름 있는 그룹의 동작을 익히거나, 이메일·URL·전화번호 형식을 코드에 넣기 전에 검증할 때 유용합니다. 각 매치는 위치(index)와 캡처된 그룹을 JSON으로 보여주며, 전체 매치 결과를 버튼 한 번으로 복사할 수 있습니다. 모든 처리는 브라우저 안에서 이루어지므로 패턴과 테스트 데이터가 외부로 전송되지 않습니다.
사용 방법
- Pattern 입력란에 정규표현식 본문만 입력합니다(앞뒤 슬래시는 빼고).
- 필요한 플래그를 켭니다: 전체 매치는 g, 대소문자 무시는 i, 멀티라인은 m, dotAll은 s, 유니코드는 u, sticky는 y입니다.
- 테스트하려는 텍스트를 Test String 칸에 붙여넣습니다.
- 하이라이트된 매치와 Match Details 목록에서 각 매치의 index와 캡처 그룹을 확인합니다.
- Copy 버튼으로 전체 매치 결과를 복사한 뒤, 완성된 패턴을 코드에 붙여넣습니다.
자주 묻는 질문
- 이 도구는 어떤 정규식 문법을 사용하나요?
- 브라우저에 내장된 JavaScript RegExp 엔진을 사용하며, 이는 Node.js와 V8 엔진에서 동작하는 것과 동일합니다. lookbehind, 이름 있는 캡처 그룹, 유니코드 속성 이스케이프 등은 브라우저가 지원하면 동작합니다. PCRE, Python, .NET 방식과는 차이가 있으니 주의하세요.
- g 플래그 없이 하면 왜 매치가 하나만 나오나요?
- global(g) 플래그가 없으면 JavaScript는 첫 번째 매치에서 멈춥니다. g 체크박스를 켜면 테스트 문자열의 모든 일치 항목을 찾아 전부 하이라이트해 줍니다.
- 슬래시를 넣거나 이스케이프해야 하나요?
- 아니요. 예를 들어 \d{4}-\d{2}-\d{2} 처럼 패턴 본문만 입력하고 앞뒤 슬래시는 넣지 마세요. 슬래시와 플래그는 도구가 화면에 자동으로 표시해 줍니다.
- 이름 있는 그룹은 어떻게 캡처하나요?
- (?<name>...) 문법을 사용하세요. 예: (?<year>\d{4})-(?<month>\d{2}). 캡처된 그룹은 각 매치의 Match Details에 JSON 객체로 표시됩니다.
- 테스트 데이터가 서버로 전송되나요?
- 아니요. 모든 매칭은 브라우저 안에서 JavaScript로 처리됩니다. 패턴과 테스트 문자열이 업로드되지 않으므로 민감하거나 비공개 데이터도 안심하고 테스트할 수 있습니다.