타이핑하는 즉시 매칭 결과를 보여주는 정규식 테스터. JavaScript(ECMAScript) 문법 기준.
/ … / 사이 입력칸에 패턴을 씁니다. 슬래시는 따로 입력하지 않아도 됩니다.g i m s u를 켜고 끕니다(기본은 g).@index)와 캡처 그룹 $1, 이름 그룹 <name> 값을 확인합니다.String.replace 결과를 바로 미리 봅니다.정규표현식(Regular Expression)은 "이런 모양의 문자열"을 기호로 표현한 패턴입니다. 이메일·전화번호 형식 검사, 로그에서 특정 줄 뽑기, 대량 찾아 바꾸기 등에 씁니다. 이 테스터는 브라우저의 RegExp를 그대로 쓰므로 JavaScript(ECMAScript) 문법 기준이며, Python이나 Java와는 일부 문법이 다를 수 있습니다.
| 플래그 | 이름 | 효과 |
|---|---|---|
g | global | 모든 일치를 찾음 (끄면 첫 번째만) |
i | ignore case | 대소문자 무시 |
m | multiline | ^ $가 각 줄의 시작·끝에 일치 |
s | dotAll | .이 줄바꿈까지 포함 |
u | unicode | 이모지 등 서로게이트 쌍을 한 글자로, \p{…} 사용 |
01[016789]-?\d{3,4}-?\d{4}^[가-힣]+$ (자음·모음 단독 문자는 제외됨)\s{2,}, 치환 " "(\d{4})-(\d{2})-(\d{2}), 치환 $3/$2/$1치환 문자열에서는 $1(번호 그룹), $<name>(이름 그룹), $&(일치 전체)를 쓸 수 있습니다.
패턴 옆 copy 버튼은 /패턴/플래그 형태의 리터럴을 복사하므로 JavaScript 코드에 바로 붙여넣을 수 있고, replace 패널의 copy는 치환이 끝난 전체 텍스트를 복사합니다. 문법이 틀리면 패턴 아래에 브라우저의 오류 메시지가 빨간색으로 표시됩니다.
표에는 최대 200개 매칭까지, 개수는 5,000개까지 셉니다. 빈 문자열에 일치하는 패턴(예: a*)은 개수에는 잡히지만 하이라이트되지 않습니다. 중첩 반복((a+)+ 같은 형태)은 긴 텍스트에서 브라우저를 멈추게 할 수 있으니 주의하세요.
g 플래그가 꺼져 있으면 첫 번째 일치에서 멈춥니다. 플래그 영역에서 g를 체크하세요. 여러 줄에서 ^, $를 쓴다면 m도 필요합니다.(?P<name>…), JavaScript가 (?<name>…)로 다르고, 인라인 플래그 (?i)는 JavaScript에서 쓸 수 없습니다.*, +는 기본적으로 탐욕적(greedy)이라 가능한 한 길게 잡습니다. 뒤에 ?를 붙인 .*?(lazy)를 쓰면 가장 짧은 일치를 찾습니다.\., \(, \$. 대괄호 안에서는 [.]처럼 대부분 그대로 써도 됩니다.