2008년 6월 27일 금요일

정규표현식

1. 반복 메타 문자

* : 0회이상 반복
+ : 1회이상 반복
? : 0회 혹은 1회
{m} : m회 반복
{m,n} : m회 부터 n회까지 반복

2. 매칭 메타문자

. : 줄바꿈 문자를 제외한 모든 문자와 매치
^ : 문자열의 시작과 매치, [] 메타 기호안에서는 반대의 문자열
$ : 문자열의 마지막과 매치, [] 메타 기호안에서는 순수한 $문자로 매치
[] : 문자 집합, - 는 범위
| : or
() : 그룹으로 묶음

3. 이스케이프 기호

\\ : 역슬래쉬 문자
\d : 모든 숫자와 매치 [0-9]
\D : 숫자가 아닌 문자와 매치 [^0-9]
\s : 화이트 스페이스 문자와 매치 [\t\n\r\f\v]
\S : 화이트 스페이스 문자가 아닌 것과 매치 [^\t\n\r\f\v]
\w : 숫자 또는 문자와 매치 [a-zA-Z0-9]
\W : 숫자 또는 문자가 아닌것과 매치 [^a-zA-Z0-9]
\b : 단어의 경계를 표시, 영문자 혹은 숫자의 연속 문자열로 가정
\B : \b의 반대로 단어의 경계가 아님을 표시

4. 최소 매칭을 위한 정규식

*? : *와 같으나 문자열을 최소로 매치
+? : +와 같으나 문자열을 최소로 매치
?? : ?와 같으나 문자열을 최소로 매치
{m,n}? : {m,n}과 같으나 문자열을 최소로 매치

열혈강의 파이썬 정규식에서 발췌.

댓글 없음: