정규식 테스터
매치 하이라이트와 캡처 그룹 상세를 포함하여 실시간으로 정규식을 테스트합니다. 무료, 브라우저에서 처리.
- 브라우저에서 처리
- 데이터가 브라우저 밖으로 나가지 않습니다
- 무료 · 회원가입 불필요
WeChat으로 스캔하여 공유
예시·자세한 설명·자주 묻는 질문 실제 출력이 있는 예시, 다른 도구와의 차이, 자주 묻는 질문.
정규식에 대하여
정규식(RegEx)은 문자열의 패턴 매칭을 위한 강력한 미니 언어입니다. 텍스트 검색·추출·치환·유효성 검사에 사용되며, 프로그래밍·데이터 처리·텍스트 편집의 모든 상황에서 활약합니다.
실제 동작 예시
g를 켰을 때 테스터가 돌려주는 결과입니다.
| 정규식 | 테스트 문자열 | 일치 |
|---|---|---|
^01[016789]-?\d{3,4}-?\d{4}$ | 010-1234-5678 | 전체 일치 (휴대전화 번호 형식) |
[가-힣]+ | 주문 번호 12345 | 주문, 번호 |
<.+> | <a>foo</a> | <a>foo</a> (탐욕적: 첫 <부터 마지막 >까지) |
<.+?> | <a>foo</a> | <a>, </a> (게으른 매칭) |
(?<=\$)\d+ | cost $42 | 42 (후방 탐색) |
^(?<ts>\S+)\s+(?<level>\w+)\s+(?<msg>.+)$ | 2026-04-07T14:23:01 ERROR connection refused | 1개. 그룹은 2026-04-07T14:23:01, ERROR, connection refused |
정규식은 형식만 확인합니다. ^\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])$는 2026-02-31도 통과시키므로 날짜는 날짜 라이브러리로 파싱하세요. 휴대전화 정규식도 번호가 실제로 존재하는지는 확인하지 않습니다.
자주 하는 실수
- 메타 문자 이스케이프 누락.
.*+?()[]{}^$|\는 특별한 의미가 있습니다. 마침표 자체는\.로 씁니다. - 여러 줄 텍스트의
^와$.m을 끄면 전체 텍스트의 처음과 끝에만 일치합니다. \w는 ASCII만 해당.café 서울에\w+를 쓰면caf만 일치하고 한글은 일치하지 않습니다. 한글에는[가-힣]같은 범위를 씁니다.- 중첩된 수량자.
(a+)+$는 일치에 가까운 문자열에서 오래 걸릴 수 있습니다. 네이티브 JavaScript RegExp를 Worker에서 실행하며 전체 제한은 2초입니다. ‘취소’로 중지할 수 있습니다. 시간 초과나 취소 시 완전한 결과는 없습니다. 입력을 바꾸면 이전 실행을 중지합니다.
제한 사항
- JavaScript 문법만 지원합니다. Python의
(?P<name>...)은 「Invalid group」 오류가 나므로(?<name>...)로 씁니다. Go(RE2), PCRE, Java용 정규식은 다르게 동작할 수 있습니다. - 플래그는 4개.
g,i,m,s만 쓸 수 있습니다.u가 없어서\p{L}은 문자열p{L}로 해석되고,y,d,v도 쓸 수 없습니다. - 그룹은 번호로 표시됩니다. 이름 있는 그룹도 그룹 1, 그룹 2로 나옵니다.
- 전체 개수, 제한된 미리 보기. 완료된 실행은 모든 일치를 셉니다. 강조 표시는 처음 100,000 UTF-16 단위와 최대 1,000개까지입니다. 목록은 처음 100개와 일치마다 20개 그룹까지이며 값마다 1,000단위, 합계 100,000단위까지 표시합니다. 줄인 값에는
…를 붙입니다. index는 UTF-16 단위로 앞의 이모지 하나마다 2씩 늘어납니다. Worker 지원이 필요합니다. - 치환은 지원하지 않습니다. 테스터는 일치를 찾기만 하고
replace()는 실행하지 않습니다.
FAQ
어떤 정규식 플레이버를 사용합니까?
JavaScript의 네이티브 RegExp 엔진을 사용합니다. 역참조(\1, \k<name>)와 전방·후방 탐색은 쓸 수 있지만, PCRE의 재귀 패턴과 소유 수량자는 쓸 수 없습니다.
플래그(g, i, m 등)를 사용할 수 있습니까?
네. 체크박스로 g(전역), i(대소문자 무시), m(여러 줄), s(dotAll) 네 가지를 조합해 설정할 수 있습니다. u·y·d·v 플래그는 없습니다.
캡처 그룹이란 무엇입니까?
괄호()로 감싼 패턴의 일부로, 매치의 특정 부분을 추출하는 데 사용합니다. 목록에는 처음 100개 매치와 매치마다 20개 그룹까지의 내용을 표시합니다. 줄인 값에는 …를 붙입니다.
데이터가 서버로 전송됩니까?
아니요. 모든 정규식 처리는 브라우저 내에서 완전히 이루어집니다.