무료 온라인 Regex Cheatsheet
인터랙티브 예제가 포함된 완전한 정규식 치트시트. 앵커, 수량자, 그룹, 문자 클래스, 룩어라운드 및 이메일, URL, IPv4 등 일반 패턴을 다룹니다. 브라우저에서 직접 테스트 가능. 무료, 100% 클라이언트 사이드.
100% 클라이언트 사이드 · 데이터는 브라우저를 절대 벗어나지 않습니다| Pattern | Description | |
|---|---|---|
^ | Start of string (or line with m flag) | → |
$ | End of string (or line with m flag) | → |
\b | Word boundary | → |
\B | Non-word boundary | → |
\A | Start of string (no multiline) | → |
\Z | End of string (no multiline) | → |
* | Zero or more (greedy) | → |
+ | One or more (greedy) | → |
? | Zero or one (optional) | → |
{n} | Exactly n repetitions | → |
{n,} | n or more repetitions | → |
{n,m} | Between n and m repetitions | → |
*? | Zero or more (lazy) | → |
+? | One or more (lazy) | → |
(abc) | Capturing group | → |
(?:abc) | Non-capturing group | → |
(?<name>abc) | Named capturing group | → |
a|b | Alternation (OR) | → |
\1 | Backreference to group 1 | → |
\k<name> | Named backreference | → |
[abc] | Character set — matches a, b, or c | → |
[^abc] | Negated set — matches anything but a, b, or c | → |
[a-z] | Character range — lowercase a to z | → |
[a-zA-Z0-9] | Alphanumeric characters | → |
. | Any character except newline (use s flag to include \n) | → |
\d | Digit [0-9] | → |
\D | Non-digit [^0-9] | → |
\w | Word character [a-zA-Z0-9_] | → |
\W | Non-word character | → |
\s | Whitespace (space, tab, newline) | → |
\S | Non-whitespace | → |
\n | Newline character | → |
\t | Tab character | → |
\r | Carriage return | → |
\0 | Null character | → |
(?=...) | Positive lookahead — followed by | → |
(?!...) | Negative lookahead — not followed by | → |
(?<=...) | Positive lookbehind — preceded by | → |
(?<!...) | Negative lookbehind — not preceded by | → |
[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,} | Email address | → |
https?:\/\/[^\s<>"]+[^\s<>",.] | URL (http or https) | → |
\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\b | IPv4 address | → |
\b\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])\b | Date (YYYY-MM-DD) | → |
(?:\+1[\s.-]?)?\(?\d{3}\)?[\s.-]\d{3}[\s.-]\d{4} | US phone number | → |
#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})\b | Hex color code | → |
\b4[0-9]{12}(?:[0-9]{3})?\b | Visa card number | → |
[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12} | UUID v4 | → |
Mini Regex Tester
Open full tester사용 방법 Regex Cheatsheet
카테고리별로 정리된 약 50개의 정규식 항목을 탐색합니다. 검색 상자나 카테고리 필터 탭으로 원하는 항목을 빠르게 찾으세요.
- 치트시트 표에서 아무 행이나 클릭하면 해당 패턴과 예제 텍스트가 하단의 미니 테스터에 로드됩니다.
- 미니 테스터에서 패턴이나 테스트 텍스트를 필요에 따라 수정하고, 플래그 버튼으로 g, i, m, s를 전환합니다.
- 테스트를 클릭하거나 Ctrl/Cmd+Enter를 누릅니다. 일치 항목이 인라인으로 강조 표시되고 코드 칩으로 나열됩니다.
- 그룹 캡처 세부 정보와 인덱스 위치를 포함한 고급 테스트는 전체 테스터 열기를 클릭하여 정규식 테스터 도구로 이동하세요.
자주 묻는 질문
이 치트시트는 어떤 정규식 엔진을 다루나요?
이 치트시트는 JavaScript의 ECMAScript 정규식 구문을 다룹니다. 대부분의 패턴은 Python, Java, Ruby, Go의 일반적인 사용 사례에도 호환됩니다. JavaScript는 PCRE의 소유 수량자나 원자 그룹을 지원하지 않습니다.
탐욕적 수량자와 게으른 수량자의 차이점은 무엇인가요?
탐욕적 수량자(*, +, {n,m})는 가능한 한 많이 일치합니다. 게으른 수량자(*?, +?, {n,m}?)는 가능한 한 적게 일치합니다. 예를 들어 <.*>는 '<b>text</b>' 전체에 일치하지만 <.*?>는 '<b>'에만 일치합니다.
비캡처 그룹 (?:...)은 언제 사용해야 하나요?
여러 토큰을 그룹화하거나 수량자를 적용하되 캡처한 텍스트가 필요하지 않을 때 (?:...)를 사용합니다. 비캡처 그룹은 약간 더 빠르고 그룹 번호를 깔끔하게 유지합니다.
룩어헤드(lookahead)란 무엇이며 언제 유용한가요?
룩어헤드 (?=...)는 문자를 소비하지 않고 현재 위치 뒤에 패턴이 오는지 확인합니다. 예를 들어 \d+(?= dollars)는 " dollars"를 포함하지 않고 그 앞의 숫자에 일치합니다. 부정 룩어헤드 (?!...)는 패턴이 뒤따르지 않는 것을 확인합니다.
JavaScript 정규식은 룩비하인드(lookbehind)를 지원하나요?
예, 최신 브라우저(Chrome 62+, Firefox 78+, Safari 16.4+)에서 지원합니다. 룩비하인드 (?<=...)는 일치 앞에 무엇이 있는지 확인합니다. 구형 브라우저를 대상으로 하는 코드에서는 사용을 피하세요.
이 페이지에서 정규식을 어떻게 테스트하나요?
치트시트 표에서 아무 행이나 클릭하여 패턴을 하단의 미니 테스터에 로드합니다. 패턴과 테스트 텍스트를 수정하고, 플래그를 전환한 후 테스트를 클릭합니다. 전체 일치 세부 정보는 정규식 테스터 도구를 사용하세요.
어떤 일반 패턴이 포함되어 있나요?
'일반 패턴' 카테고리에는 이메일 주소, HTTP/HTTPS URL, IPv4 주소, ISO 8601 날짜, 미국 전화번호, 16진수 색상 코드(#RGB / #RRGGBB), Visa 카드 번호, UUID v4가 포함됩니다.