다해봄

정규식 테스터

내가 쓴 정규식이 글의 어디에 맞을까?

JavaScript 정규식은 g 플래그가 있어야 모든 일치를 바꿉니다.

ECMAScript 정규식 기준 · 서버로 보내지 않음 · 업데이트

g 모두 · i 대소문자 무시 · m 여러 줄 · s 점이 줄바꿈도 · u 유니코드

결과

-

    자주 쓰는 정규식

    기호뜻
    \d \w \s숫자 · 글자(영문·숫자·_) · 공백
    .줄바꿈을 뺀 아무 글자 하나
    * + ?0번 이상 · 1번 이상 · 있거나 없거나
    {3,4}3~4번 반복
    ^ $시작 · 끝 (m 이면 줄마다)
    [가-힣]완성형 한글 한 글자
    (…) (?:…)캡처 그룹 · 캡처 안 하는 그룹
    (?<y>…)이름 붙인 그룹
    a|ba 또는 b
    결과가 이상한가요?
    어떤 점인지 골라 주시면 확인해서 고치겠습니다. 넣은 숫자는 보내지 않습니다.

    자세히 알려 주실 내용은 [email protected] 로 보내 주세요.

    어떻게 계산했나요

    ECMAScript 정규식 기준 · 서버로 보내지 않음

    • 브라우저의 JavaScript 정규식(ECMAScript, new RegExp)으로 맞춥니다. 쓸 수 있는 플래그는 d g i m s u v y
    • g 가 없어도 모든 일치를 찾아 보여 드립니다 (코드에서 replace·match 는 g 가 있어야 모두)
    • 빈 일치는 한 글자씩 건너 이어서 찾습니다
    • 역추적 폭발 대비: 웹 워커에서 돌리고 1초 넘으면 멈춤, 글 20,000자·일치 1,000개까지
    • 패턴·글·결과는 서버·분석 도구·주소창·브라우저 저장소 어디에도 보내거나 남기지 않습니다

    자주 묻는 질문

    넣은 패턴과 글이 어디로 가나요?

    어디로도 가지 않습니다. 이 기기의 브라우저 안에서만 맞춰 보고, 패턴·글·결과는 서버·분석 도구·주소창에 보내거나 남기지 않습니다.

    g 플래그가 없는데도 일치가 모두 나와요.

    확인하기 쉽게 이 도구는 g 가 없어도 모든 일치를 보여 드립니다. 코드에서는 다릅니다. JavaScript 의 replace·match 는 g 플래그가 있어야 모든 일치를 바꾸거나 찾고, 없으면 첫 일치 하나만 다룹니다.

    어떤 정규식 문법인가요?

    브라우저의 JavaScript(ECMAScript) 정규식입니다. 이름 붙인 그룹 (?<이름>…), 뒤돌아보기 (?<=…), 유니코드 속성 \p{…}(u 플래그)을 쓸 수 있습니다. 파이썬·자바·PCRE 와 대부분 같지만 소유 수량자(a++)나 원자 그룹처럼 JavaScript 에 없는 문법은 오류가 납니다.

    페이지가 멈추지 않나요?

    (a+)+ 처럼 반복 안에 반복이 있는 패턴은 글에 따라 계산이 폭발적으로 늘어납니다(역추적 폭발). 이 도구는 따로 떨어진 작업(웹 워커)에서 돌리고 1초가 넘으면 끊어서, 화면은 멈추지 않습니다. 글은 2만 자, 일치는 1,000개까지 봅니다.

    한글 한 글자를 찾으려면?

    [가-힣] 은 완성형 한글 한 글자입니다. 자음·모음까지 넣으려면 [ㄱ-ㅎㅏ-ㅣ가-힣] 을 쓰세요. 휴대폰 번호는 01[016789]-?\d{3,4}-?\d{4} 처럼 찾을 수 있습니다.