| 패턴 | 설명 | 예시 | 매칭되는 문자열 |
|---|---|---|---|
. | 임의의 문자 (줄바꿈 제외) | a.c | "abc", "acc", "axc" |
\d | 숫자 (0-9) | \d+ | "123", "4567" |
\D | 숫자가 아닌 문자 | \D+ | "abc", "!@#" |
\w | 알파벳, 숫자, 밑줄 (_) 포함 문자 | \w+ | "abc123", "x_y" |
\W | 알파벳, 숫자, 밑줄이 아닌 문자 | \W+ | "!@#", " " |
\s | 공백 문자 (스페이스, 탭, 줄바꿈 등) | \s+ | " ", "\t", "\n" |
\S | 공백 문자가 아닌 문자 | \S+ | "abc", "123" |
* | 0번 이상 반복 | a* | "", "a", "aa" |
+ | 1번 이상 반복 | a+ | "a", "aa", "aaa" |
? | 0번 또는 1번 | a? | "", "a" |
{n} | 정확히 n번 반복 | a{3} | "aaa" |
{n,} | n번 이상 반복 | a{2,} | "aa", "aaa", "aaaa" |
{n,m} | n번 이상 m번 이하 반복 | a{2,4} | "aa", "aaa", "aaaa" |
[abc] | a, b, c 중 하나의 문자 | [abc] | "a", "b", "c" |
[^abc] | a, b, c를 제외한 문자 | [^abc] | "d", "e" |
[a-z] | 소문자 알파벳 | [a-z] | "a", "b", "z" |
[A-Z] | 대문자 알파벳 | [A-Z] | "A", "B", "Z" |
[0-9] | 숫자 | [0-9] | "1", "9" |
^ | 문자열의 시작 | ^abc | "abc"로 시작하는 문자열 |
$ | 문자열의 끝 | abc$ | "abc"로 끝나는 문자열 |
() | 그룹화 | (abc)+ | "abc", "abcabc" |
| ` | ` | OR 연산자 (선택) | `abc |
\1, \2, ... | 이전에 그룹화된 패턴 참조 | (abc)\1 | "abcabc" |
(?=...) | 긍정적 전방탐색 (lookahead) | \d(?=\D) | 숫자 뒤에 숫자가 아닌 문자가 오는 경우 |
(?!...) | 부정적 전방탐색 (negative lookahead) | \d(?!\D) | 숫자 뒤에 숫자가 아닌 문자가 오지 않는 경우 |