research:pythonregularexpression
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 | ||
research:pythonregularexpression [2014/01/09 04:53] – 새로 만듦 changwoo | research:pythonregularexpression [2014/10/09 21:24] (현재) – 바깥 편집 127.0.0.1 | ||
---|---|---|---|
줄 1: | 줄 1: | ||
====== 파이썬 정규식 학습하기 ======= | ====== 파이썬 정규식 학습하기 ======= | ||
- | 파이썬에서 정규식 부분이 매우 강력해서 자주 쓰고는 있지만, 다양한 정규 표현식에 대해서는 그다지 익히지 못해 고급 표현에는 조금 약하다. 이번 문서에서 파이썬 re 모듈의 문서를 완전히 정리하도록 하자. | + | 파이썬에서 정규식 부분이 매우 강력해서 자주 쓰고는 있지만, 다양한 정규 표현식에 대해서는 그다지 익히지 못해 고급 표현에는 조금 약하다. 이번 문서에서 |
+ | ===== 기본 기호 ===== | ||
+ | * ' | ||
+ | * ' | ||
+ | * ' | ||
+ | * ' | ||
+ | * ' | ||
+ | * '?' | ||
+ | * *?, +?, ?? ' | ||
+ | * {m} 정확히 m번 반복하는 것만 매칭한다. | ||
+ | * {m, n} m회 이상 n회 이하의 반복을 매칭한다. n이 생략되면 상한선을 두지 않는다는 뜻이다. n을 생략하면 하한선을 두지 않으므로 0회 반복되어도 무방하다는 뜻이다. | ||
+ | * {m,n}? m회 이상 n회 이하의 반복이기는 하지만 가장 작은 매칭을 사용한다. 예를 들어 ' | ||
+ | * \ 이스케이프 문자 | ||
+ | * [] 이 안에 들어가는 문자 중 하나와 매칭. | ||
+ | * ' | ||
+ | * (, +, * 같은 기호들이 의미를 잃고 보통 문자열로 취급됨 | ||
+ | * \w, \S 같은 문자들도 사용 가능. | ||
+ | * [^ 는 이 문자열 목록에 있지 않은 문자들만 매칭 | ||
+ | * | A|B A여도 되고, B여도 되고. 이 때 A, B는 임의 길이의 스트링이다. | ||
+ | * ( ) 그룹을 만들 때 사용한다. | ||
+ | * (? ) 그룹의 확장 표현이다. | ||
+ | * (?iLmsux) 해당 부분에만 옵션을 적용할 때 사용한다. 옵션은 다음과 같다. | ||
+ | * i: ignore case | ||
+ | * L: locale-dependant | ||
+ | * m: multi-line | ||
+ | * s: dot matches all | ||
+ | * u: unicode dependant | ||
+ | * x: verbose | ||
+ | * (? | ||
+ | * 예를 들어 ''' | ||
+ | * 패턴 자체를 참조할 때, (?P=quote) 혹은 \1 로 참조 되며, | ||
+ | * 매칭된 문자열에서는 m.group(' | ||
+ | * (?P=name) 이미 name으로 지정된 그룹을 참조할 때 사용한다. | ||
+ | * (?#....) 주석이다. | ||
+ | * (?=....) lookahead이다. 'Issac (? | ||
+ | * (?!....) (? | ||
+ | * %%(?< | ||
+ | * (?<!...) ...안의 문자열로 시작하지 않으면 매칭한다. | ||
+ | * (? | ||
+ | * \숫자 그룹 번호를 참조할 때 사용한다. | ||
+ | * \A 문자열의 처음과 매칭된다. | ||
+ | * \b 빈문자와 매칭되나 단어의 앞뒤에만 적용된다. 예를 들어 r' | ||
+ | * \B \b의 반대 케이스로 빈 문자와 매칭되지만, | ||
+ | * \d 숫자와 매칭된다. [0-9]와 같다 | ||
+ | * \D 숫자가 아닌 것들과 매칭된다. [^0-9]와 같다. | ||
+ | * \s 공백 문자들. [ \t\n\r\f\v] | ||
+ | * \S 공백 문자가 아닌 문자들. | ||
+ | * \w 알파벳, 숫자, 언더스코어들 말한다. LOCALE, UNICODE가 사용되면 알파벳은 영향을 받는다. | ||
+ | * \W non-alphanumeirc | ||
+ | * \Z 문자열의 끝. | ||
+ | |||
+ | ===== 참고 사이트 ===== | ||
+ | * http:// | ||
+ |
research/pythonregularexpression.1389243217.txt.gz · 마지막으로 수정됨: 2014/10/09 21:23 (바깥 편집)