정규식 문법
사용 문자 |
사용법 | 의미 |
비고 |
. |
a.b | \n(줄 바꿈)를 제외한 모든 문자와 매치됨을 의미한다. 즉, a와 b 문자 사이에 모든 문자가 허용된다. ex) aab, acb, afb, a3b .... |
|
^ |
^app | 문자열의 시작을 나타낸다. ex) ^app apple.... , appads .. 즉, app~로 시작하는 문자열이 모두 매치된다. |
|
$ |
ple$ | 문자열의 종료를 나타낸다. ex) abcple, aee3ple, oefple .... |
|
[] |
apple[a-z] | 집합을 의미한다. ex) [abcd]의 경우 a 또는 b 또는 c또는 d를 의미한다. ex) [^5]일 경우 5를 제외한 모든 문자를 의미한다. ex) [a-c]일 경우, a~c 문자를 의미한다. apple[a-z]는 applee, applec... 와 매치되고 apple4, appleE와 같은 문자일 경우, 매치되지 않는다. |
|
| |
a|b | OR 연산을 의미한다. ex) a|b는 a 또는 b문자열을 의미한다. |
|
() |
(a|b) | 괄호 안의 정규식을 group으로 만든다. 직접 괄호를 통하여 매칭하기 위해서 \(, \[로도 나타낸다. |
|
* |
ca*t | 0회 이상 반복되는 것을 의미한다. ex) ca*t는 ct, cat, caat, caaaaat) 등과 매치된다. |
|
+ |
a+ | 1회 이상 반복되는 것을 말한다. ex) cat, caaat 등 |
|
? |
ca?t | 0회 또는 1회 이상 반복되는 것을 의미한다. ex) ca?t는 cat, ca와 매치된다. |
|
{m} | ca{2} | {m}회 반복하는 것을 말한다. ex) ca{2}는 caa와 매치된다. |
|
{m, n} | ca{m,n} | m 회부터 n회까지 반복됨을 말한다. ex) ca{2,4}p는 caap, caap, cbbbp와 매치된다. |
|
{m,} |
|
|
|
정규식 예제
import re
print (bool(re.match( '[a-c]{3}', 'aaa')))
→ True