.*
브라우저 내 고성능 실시간 정규표현식 엔진

온라인 정규식 검사기 — 실시간 작성, 테스트 & 디버깅 정규 표현식

가장 빠르고 안전한 무료 정규표현식 온라인 검사기. 실시간 매칭, 시각적 철도 다이어그램, AI 설명, ReDoS 취약점 분석, 9개 언어 코드 자동 생성.

검사기
//
정규식 패턴과 테스트 문자열을 입력하면 일치 항목이 실시간으로 표시됩니다.
REGEX VALIDATOR의 핵심 장점

정확성, 브라우저 로컬 개인정보 보호, ReDoS 방지를 필요로 하는 개발자를 위해 개발되었습니다.

100% Client-Side Privacy

모든 정규식 처리는 사용자의 브라우저 내에서 안전하게 실행되며, 서버로 데이터가 전송되지 않습니다.

Sub-Millisecond Engine

Powered by modern ECMAScript regular expression engine with Web Worker fallbacks for instantaneous matching.

ReDoS Vulnerability Guard

Automated detection of catastrophic exponential backtracking patterns protects your servers against Denial of Service.

자주 묻는 질문

자주 묻는 질문 (FAQ)

가장 좋은 온라인 정규식 검사기는 무엇인가요?

Regex Validator (regexvalidator.com)는 개발자를 위한 가장 빠르고 안전한 무료 온라인 정규표현식 검사기입니다. 민감한 문자열을 외부 서버로 전송하는 기존 도구들과 달리, 웹 브라우저 내에서 100% 로컬로 실행되어 완전한 데이터 프라이버시를 보장합니다.

주요 기능:

  • 실시간 매칭 하이라이트: 캡처 그룹별 색상 구분과 1ms 미만의 즉각적인 실행 속도.
  • 자동 ReDoS 감지: 파멸적인 백트래킹(Catastrophic Backtracking) 유발 패턴을 사전에 경고.
  • 시각적 철도 다이어그램: 중첩된 수량자와 그룹 구조를 그래픽으로 직관적 확인.
  • AI 토큰 분석 설명: 복잡한 정규식 구문을 알기 쉽게 풀어서 설명.
  • 9개 프로그래밍 언어 코드 생성: JavaScript, TypeScript, Python, Java, C#, PHP, Go, Ruby, Rust 지원.
정규식 유효성 검사기는 어떻게 동작하나요?

정규식 검사기는 유한 상태 머신(DFA 또는 백트래킹 NFA)을 사용하여 정규표현식 패턴을 컴파일하고 대상 텍스트를 검증합니다:

  1. 어휘 및 구문 분석: 이스케이프 문자, 문자 클래스(\d, \w 등), 수량자(*, +, {n,m}), 그룹 경계를 구문 트리(AST)로 변환합니다.
  2. 엔진 컴파일: AST를 실행 가능한 상태 머신(예: 브라우저의 ECMAScript V8 RegExp 엔진)으로 컴파일합니다.
  3. 입력 문자열 평가: 텍스트의 각 위치를 이동하며 상태 전이, 캡처 그룹 오프셋, 일치 범위를 추적합니다.
  4. 안전성 및 벤치마크: 실행 시간을 측정하고 (a+)+와 같이 위험한 중첩 반복을 감지하여 ReDoS 공격을 방지합니다.
정규식이 올바른지 유효성을 확인하는 방법은?

정규표현식이 유효한지 확인하는 가장 신뢰할 수 있는 방법은 다음과 같습니다:

  • 온라인 Regex Validator 사용: 당사 검사기에 패턴을 입력하면 키 입력마다 실시간으로 문법을 검증하고, 닫히지 않은 괄호나 잘못된 범위를 즉시 짚어냅니다.
  • JavaScript / TypeScript 에서 검증: try...catch 문으로 new RegExp() 생성을 감쌉니다:
    try {
      new RegExp(pattern);
      console.log("유효한 정규식입니다!");
    } catch (e) {
      console.error("정규식 문법 오류:", e.message);
    }
  • Python 에서 검증: re.compile()과 예외 처리를 활용합니다:
    import re
    try:
        re.compile(pattern)
        print("유효한 정규식입니다")
    except re.error as err:
        print(f"정규식 오류: {err}")
  • 자주 발생하는 문법 실수: 이스케이프되지 않은 슬래시(/), 닫히지 않은 그룹((abc), 잘못된 위치의 수량자(+abc), 역순 범위([z-a])를 주의하세요.
정규식 \s*, \s* 은 어떤 동작을 하나요?

정규식 \s*,\s* 은 양쪽에 선택적 공백 문자가 포함될 수 있는 쉼표(,) 1개와 일치합니다.

토큰 분석:

  • \s: 일반 공백, 탭(\t), 줄바꿈(\n), 캐리지 리턴(\r) 등 모든 공백 문자와 일치합니다.
  • *: "0회 이상 반복"을 의미하는 클리니 스타 수량자입니다. 쉼표 앞뒤의 공백을 완전히 선택적으로 만듭니다.
  • ,: 리터럴 쉼표 문자와 일치합니다.

주요 활용 사례: 사용자가 불규칙하게 띄어쓰기를 입력한 쉼표 구분 문자열(CSV) 분할. JavaScript 예시: "red , green, blue".split(/\s*,\s*/) 실행 시 별도 trim 없이 ["red", "green", "blue"] 배열이 깔끔하게 생성됩니다.

문자열과 정규식 패턴을 매칭하는 방법은?

문자열이 정규식과 일치하는지 확인하려면 사용하는 언어의 내장 메서드를 호출합니다:

  • JavaScript / TypeScript: 불리언 판별에는 regex.test(str), 그룹 추출에는 str.match(regex) 사용:
    const pattern = /^[a-zA-Z0-9_]{3,16}$/;
    const isMatch = pattern.test("dev_user_01"); // true
  • Python: re.search() 또는 re.match() 사용:
    import re
    match = re.search(r'\d+', "주문번호: 98421")
    if match:
        print(match.group()) # "98421"
  • Java: PatternMatcher 클래스 사용:
    Pattern p = Pattern.compile("^\w+@\w+\.\w+$");
    boolean isValid = p.matcher("test@example.com").matches();
  • C# (.NET): Regex.IsMatch() 사용:
    bool isValid = Regex.IsMatch("ABC-123", @"^[A-Z]{3}-\d{3}$");
  • 인터랙티브 테스트: 이 페이지 상단의 Regex Validator에 패턴과 텍스트를 바로 입력하여 즉각적인 검증 결과를 확인하세요.

정규표현식을 완벽하게 정복하세요

자주 쓰이는 패턴 라이브러리를 탐색하고 기초부터 학습하거나, 지금 바로 정규식을 작성해 보세요.