JavaScript·Go(RE2) 정규식 테스터
JavaScript 엔진이나 Go의 RE2 엔진으로 텍스트에 정규식을 테스트하고, 모든 일치 항목과 캡처 그룹, 치환 결과를 확인합니다.
두 엔진의 문법 요약표
| 토큰 | 의미 | JavaScript | Go (RE2) |
|---|---|---|---|
. | 줄바꿈을 제외한 모든 문자. s 플래그를 켜면 줄바꿈과도 일치합니다. | 지원 | 지원 |
\d \w \s | 숫자, 단어 문자, 공백 문자. 대문자로 쓴 \D, \W, \S는 그 반대와 일치합니다. | 지원 | 지원 |
[abc] [^abc] [a-z] | 집합에 속한 문자 하나, 집합에 속하지 않은 문자 하나, 범위에 속한 문자 하나. | 지원 | 지원 |
^ $ | 텍스트의 시작과 끝. m 플래그를 켜면 각 줄의 시작과 끝. | 지원 | 지원 |
\b \B | 단어 경계, 그리고 단어 경계가 아닌 위치. | 지원 | 지원 |
* + ? {2,5} | 0번 이상, 1번 이상, 0번 또는 1번, 2번에서 5번. 각각 가능한 한 많이 일치합니다. | 지원 | 지원 |
*? +? ?? {2,5}? | 같은 수량자이지만 가능한 한 적게 일치합니다. | 지원 | 지원 |
(…) (?:…) | 캡처 그룹, 그리고 묶기만 하는 그룹. | 지원 | 지원 |
(?<name>…) | 이름 있는 캡처 그룹. Go는 1.22 버전부터 이 형식을 받아들이며, (?P<name>…)는 모든 버전에서 받아들입니다. | 지원 | 지원 |
a|b | a 또는 b. | 지원 | 지원 |
\p{L} \p{Lu} | Unicode 속성: 임의의 문자, 임의의 대문자. JavaScript에서는 u 플래그가 필요합니다. | 지원 | 지원 |
(?i) (?s) (?m) | 패턴 안에 쓰는 플래그. JavaScript에서는 플래그를 패턴 밖에서 지정합니다. | 미지원 | 지원 |
\A \z | m 플래그와 관계없이 전체 텍스트의 시작과 끝. | 미지원 | 지원 |
[[:alpha:]] | 집합 안에서 쓰는 POSIX 문자 클래스. | 미지원 | 지원 |
(?=…) (?!…) | 전방 탐색: 뒤에 오는 내용이 일치해야 하거나 일치하지 않아야 하며, 소비되지 않습니다. | 지원 | 미지원 |
(?<=…) (?<!…) | 후방 탐색: 앞에 오는 내용이 일치해야 하거나 일치하지 않아야 합니다. | 지원 | 미지원 |
\1 \k<name> | 역참조: 앞의 그룹이 일치한 것과 같은 텍스트. | 지원 | 미지원 |