Basic matching
symbol | character |
---|
. | 와일드 카드. 어떤 문자와도 일치한다. |
\s | 공백 문자와 일치한다. |
\S | 비 공백 문자와 일치한다.(소문자 \s와 반대) |
\d | 숫자와 일치한다. [0-9]와 동일하다. |
\D | 숫자 이외의 문자와 일치한다. [^0-9]와 동일하다. |
Character classes
symbol | character |
---|
[aeiou] | 단일 문자와 일치한다. 여기서는 'a', 'e', 'i', 'o', 'u'와 일치하며, 그 외의 문자는 일치되지 않는다. |
[a-z0-9] | '-' 표시를 써서 문자 범위를 지정할 수 있다. 여기서는 소문자나 숫자로 된 하나의 단일 문자만 일치한다. |
[^A-Za-z] | 캐럿 문자는 논리를 반전시킨다. 이 예제는 대문자 또는 소문자 이외의 다른 문자와 일치한다. |
Boundaries
symbol | character |
---|
\b | 비어 있는 문자열과 일치하지만, 단어 처음이나 끝에 있어야 한다. |
\B | 비어 있는 문자열과 일치하지만, 단어 처음이나 끝에 있지 않아야 한다. |
^ | 줄의 시작이 일치한다. |
$ | 줄의 끝이 일치한다. |
"Quantifiers"
symbol | character |
---|
* | 왼쪽의 문자가 0번 이상 나오는 경우와 일치한다.(탐욕적 수량자) |
*? | 왼쪽의 문자가 0번 이상 나오는 경우와 일치한다.(게으른 수량자) |
+ | 왼쪽의 문자가 1번 이상 나오는 경우와 일치한다.(탐욕적 수량자) |
+? | 왼쪽의 문자가 1번 이상 나오는 경우와 일치한다.(게으른 수량자) |
? | 왼쪽의 문자가 0번 이상 나오는 경우와 일치한다.(탐욕적 수량자) |
?? | 왼쪽의 문자가 0번 이상 나오는 경우와 일치한다.(게으른 수량자) |
() | 보통은 일치 여부를 판단하지 않을 때 괄호를 쓰지만, findall()에 사용하면 일치된 문자열에서 특정 하위 문자열만 추출할 수 있다. |
Special characters
특수 문자를 이런 용도로 쓰는 대신, 단순히 해당 문자를 나타내고 싶은 경우,
백슬래시(\, backslash)를 해당 문자 앞에 접두어로 써서, 이 문자가 정규 표현식의 '특수 문자'로 쓰이는 것이 아니라, 단순히 해당 '문자 자체'를 표현하고 있다는 걸 알리면 된다.
Backreferences