Handytool
개발자 가이드5분 읽기2026년 3월 16일에 업데이트됨

무료 정규식 플레이그라운드

JavaScript 정규식을 실시간으로 디버그하세요

Handytool의 정규식 테스터는 입력할 때마다 패턴을 테스트 문자열에 대해 실행하고, 모든 매치, 캡처 그룹, 대체 미리보기를 브라우저에서 벗어나지 않고 표시합니다.

핵심 요점

  • 01테스터는 브라우저의 네이티브 JavaScript RegExp 엔진을 사용하므로 결과는 Node.js 또는 최신 브라우저의 프로덕션 결과와 정확히 일치합니다.
  • 026개의 JavaScript 플래그(g, i, m, s, y, u) 모두를 개별적으로 사용할 수 있습니다.
  • 03대체 템플릿은 강력한 치환 미리보기를 위해 $1, $2, $&, $$를 지원합니다.
  • 04아무것도 서버로 전송되지 않습니다. 패턴과 테스트 문자열은 완전히 브라우저에만 있습니다.

전용 정규식 테스터가 IDE보다 나은 이유

정규식은 강력하지만 한눈에 읽기가 어렵기로 악명높습니다. 경험 많은 개발자도 놀라운 일을 겪습니다. 개행을 삼키는 점, 너무 많이 소비하는 탐욕 정량자, 또는 위치가 하나 틀린 캡처 그룹입니다. 전용 테스터는 주변 코드를 제거하므로 패턴과 입력 문자열 자체에만 집중할 수 있습니다.

Handytool의 정규식 테스터는 브라우저의 네이티브 ECMAScript RegExp 엔진으로 패턴을 평가합니다. 변환 레이어가 없고 방언 불일치가 없습니다. 테스터가 일치한다고 하면, JavaScript 코드도 그럴 것입니다. 플래그를 전환하고, 새로운 샘플 문자열을 붙여 넣으면, 결과가 즉시 업데이트됩니다. 실행 버튼이 필요하지 않습니다.

정규식 패턴을 테스트하는 방법

전체 워크플로우는 1분 이내에 완료됩니다.

  1. 01

    패턴 붙여 넣기 또는 입력

    패턴 필드에 정규 표현식을 입력합니다. 주변 슬래시는 생략하세요. 플래그는 별도로 설정됩니다.

  2. 02

    플래그 설정

    g, i, m, s, y, u를 개별적으로 전환합니다. 다중 매치 사용 사례에는 전역 플래그가 거의 항상 필요합니다.

  3. 03

    테스트 문자열 붙여 넣기

    일치시킬 텍스트를 추가합니다. 모든 키 입력마다 패턴이 다시 실행되고 입력의 매치가 강조됩니다.

  4. 04

    캡처 그룹 검사

    매치 목록을 스크롤하여 각 매치의 위치와 번호가 지정된 모든 캡처 그룹의 값을 확인합니다.

  5. 05

    대체 미리보기

    $1, $2, 또는 $&를 사용하는 대체 템플릿을 입력하여 대체된 출력을 라이브로 확인합니다. 코드를 작성하기 전에 String.replace() 호출을 검증하는 데 좋습니다.

빠른 정규식 디버깅 체크리스트

버그라고 가정하기 전에 다음을 검토하세요:

  • 011개 이상의 매치를 예상할 경우 전역 플래그가 활성화되어 있나요?
  • 02점이 줄바꿈과 일치해야 하나요? 그렇다면 s 플래그를 활성화하세요.
  • 03대체에 번호 그룹($1, $2) 또는 이름 그룹(\k<name>)을 사용하고 있나요?
  • 04패턴이 Unicode 이스케이프(\p{…})를 사용하나요? u 플래그가 필요합니다.
  • 05스티키 플래그(y)가 각 매치에 대해 새 lastIndex가 필요하나요?

설계상 비공개

정규식 테스터는 입력할 때 네트워크 요청이 없습니다. 패턴과 테스트 문자열은 브라우저의 JavaScript 엔진에 의해 완전히 처리되므로, 서버를 건드리지 않습니다. 따라서 독점 로그 라인, 내부 API 페이로드, 민감한 문자열을 안전하게 붙여 넣고 디버그할 수 있습니다.

백엔드가 없으므로 속도 제한, 필수 계정, 브라우저 탭이 처리할 수 있는 범위를 초과하는 붙여 넣기 크기 제한도 없습니다. 대부분의 일상적인 패턴과 문자열은 1밀리초 이내에 평가됩니다.

정규식 테스터 FAQ

이 테스터는 어느 정규식 방언을 사용하나요?

JavaScript(ECMAScript). 패턴은 브라우저의 네이티브 RegExp 엔진으로 평가되므로, Node.js 및 최신 브라우저 동작과 정확히 일치합니다. 룩비하인드, 이름 그룹, Unicode 속성 이스케이프(u 플래그와 함께 \p{…})가 모두 지원됩니다.

패턴이나 테스트 문자열이 페이지를 벗어나나요?

아니요. 모든 것이 브라우저에서 로컬로 실행되므로, 패턴을 입력하거나 플래그를 변경하거나 대체를 미리볼 때 네트워크 요청이 없습니다.

대체 필드에서 캡처 그룹을 사용하려면 어떻게 하나요?

번호 그룹에는 $1, $2, …를 사용하고, 전체 매치에는 $&를, 리터럴 달러 기호를 삽입하려면 $$를 사용합니다. 미리보기는 패턴이나 템플릿 중 하나를 변경할 때 라이브로 업데이트됩니다.

이것이 Python 또는 PCRE 패턴에 작동하나요?

엔진은 JavaScript이므로, 대부분의 기본 패턴은 동일하게 작동하지만, Python 스타일 (?P<name>…) 이름 그룹과 독점적 정량자는 지원되지 않습니다. JS 동등물을 사용하세요. 이름 그룹의 경우 (?<name>…)을 사용하세요.

정규식이 줄바꿈을 건너뛰며 일치하지 않는 이유는 무엇인가요?

s(dot-all) 플래그를 활성화하거나, 점을 [\s\S]로 바꾸세요. 없으면 점은 줄바꿈을 제외한 모든 문자와 일치합니다.

관련 도구

개발자 도구로 계속 작업하기

개발자 도구