정규 표현식 테스터

텍스트에 대해 정규 표현식을 테스트하세요

강조된 일치
2 일치

왜 브라우저에서 정규 표현식을 테스트하나요?

정규 표현식 엔진은 언어마다 미세하게 다릅니다: PCRE (PHP), POSIX (grep), Perl, Python의 `re`, 자바스크립트의 정규 표현식은 서로 다른 기능 세트를 가지고 있습니다. 브라우저에서 테스트하면 자바스크립트 엔진을 사용하게 되며, 이는 클라이언트 측 코드, Node.js 또는 Inertia 검증 규칙에서 실행되는 것과 정확히 동일합니다.

테스터는 입력할 때 일치를 강조하고, 일치마다 캡처 그룹을 나열하며, 현재 적용 중인 정규 표현식 플래그를 보여줍니다. 잘못된 패턴은 조용히 실패하는 대신 명확한 구문 오류를 표시합니다.

사용 사례

  • 로그에서 필드 추출 — 비구조적 로그 라인에서 풀 리퀘스트 ID, IP 또는 타임스탬프를 추출합니다.
  • 사용자 입력 검증 — 양식을 제출하기 전에 이메일, 우편번호 또는 전화번호를 확인합니다.
  • 대량 찾기 및 바꾸기 — 소스 코드 또는 마크다운의 붙여넣기를 스윕하여 캡처 그룹 자리 표시자로 패턴 이름을 변경합니다.
  • 민감한 데이터 정리 — 스크린샷을 공유하기 전에 로그에서 이메일, JWT 또는 신용 카드 번호를 제거합니다.

예시

Extracting emails with capture groups
입력
Pattern: \b([\w.]+)@([\w.]+)\.([a-z]{2,})\b
Flags: gi
Text: Contact [email protected] or [email protected]
출력
Match 1: [email protected]
  Group 1: alice
  Group 2: example
  Group 3: com

Match 2: [email protected]
  Group 1: bob
  Group 2: test
  Group 3: org

자주 묻는 질문

어떤 정규 표현식 맛이 지원되나요?

자바스크립트 / ECMAScript 정규 표현식. 최신 브라우저에서 lookbehind, 명명된 그룹 (`(?<name>...)`), 유니코드 모드 (`u` 플래그), 스티키 매칭 (`y` 플래그)을 지원합니다.

내 PCRE 패턴이 작동하지 않는 이유는 무엇인가요?

PCRE는 자바스크립트 정규 표현식이 지원하지 않는 기능이 있습니다: 재귀 패턴, 소유적 수량자, 조건부 패턴. 자바스크립트는 대부분의 일상적인 요구를 충족하지만 이러한 고급 사례는 포함하지 않습니다.

캡처 그룹은 어떻게 작동하나요?

패턴의 일부를 감싸는 괄호는 번호가 매겨진 캡처 그룹을 생성합니다. 일치 내에서 그룹 1은 첫 번째 `(...)`, 그룹 2는 두 번째, 등입니다. 비캡처 그룹을 위해 `(?:...)`를 사용하세요.

무한 루프 정규 표현식이 브라우저를 멈추게 하나요?

재앙적인 백트래킹은 탭을 잠시 멈출 수 있습니다. 테스터는 귀하의 탭에서 실행되므로 잘못된 패턴은 이 도구에만 영향을 미칩니다 — 필요시 닫고 다시 열어주세요.

내 패턴이나 테스트 텍스트가 업로드되나요?

아니요 — 둘 다 귀하의 브라우저에 남아 있습니다.