사용자 도구

사이트 도구


research:pythonregularexpression

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
research:pythonregularexpression [2014/01/09 05:25] changwooresearch:pythonregularexpression [2014/10/09 21:24] (현재) – 바깥 편집 127.0.0.1
줄 3: 줄 3:
  
 ===== 기본 기호 ===== ===== 기본 기호 =====
-  * '.' (닷) newline 문자를 제외한 어떤 문자. DOTALL 모드를 사용하면 newline도 포함한다.+  * '.'(닷) newline 문자를 제외한 어떤 문자. DOTALL 모드를 사용하면 newline도 포함한다.
   * '^' (캐럿) 문자열의 시작. MULTILINE 모드면 newline 바로 다음도 인식한다.   * '^' (캐럿) 문자열의 시작. MULTILINE 모드면 newline 바로 다음도 인식한다.
   * '$' 문자열의 마지막. 마찬가지로 MULTILINE 모드이면 newline바로 전도 인식한다.   * '$' 문자열의 마지막. 마찬가지로 MULTILINE 모드이면 newline바로 전도 인식한다.
줄 33: 줄 33:
         * 패턴 자체를 참조할 때, (?P=quote) 혹은 \1 로 참조 되며,         * 패턴 자체를 참조할 때, (?P=quote) 혹은 \1 로 참조 되며,
         * 매칭된 문자열에서는 m.group('quote')로 참조 가능하다.         * 매칭된 문자열에서는 m.group('quote')로 참조 가능하다.
-  * (?P=name) 이미 name으로 지정된 그룹을 참조할 때 사용한다. +    * (?P=name) 이미 name으로 지정된 그룹을 참조할 때 사용한다. 
-  * (?#....) 주석이다. +    * (?#....) 주석이다. 
-  * (?=....) lookahead이다. 'Issac (?=Assimov)'란 표현을 사용하면 'Issac Assimov'에서 Issac만을 찾아낸다. 그러나 'Issac Newton'은 Newton이란 문자열은 Assimov랑 다르므로 매칭되지 않는다. +    * (?=....) lookahead이다. 'Issac (?=Assimov)'란 표현을 사용하면 'Issac Assimov'에서 Issac만을 찾아낸다. 그러나 'Issac Newton'은 Newton이란 문자열은 Assimov랑 다르므로 매칭되지 않는다. 
-  * (?!....) (?=...)와는 반대로 매칭되지 않는 것만을 찾아낸다. +    * (?!....) (?=...)와는 반대로 매칭되지 않는 것만을 찾아낸다. 
-  * +    * %%(?<=...)%% ...안의 문자열로 시작하면 매칭한다. ''(?<=abc)def''라는 표현에서 'abcdef'를 찾으면 def를 매칭한다. 
 +    * (?<!...) ...안의 문자열로 시작하지 않으면 매칭한다. 
 +    * (?(id/name)yes-pattern|no-pattern) id/name이 있으면 yes-pattern을, 아니면 no-pattern을 평가한다. no-option은 선택적이다. 
 +  * \숫자 그룹 번호를 참조할 때 사용한다. 
 +  * \A 문자열의 처음과 매칭된다. 
 +  * \b 빈문자와 매칭되나 단어의 앞뒤에만 적용된다. 예를 들어 r'\bfoo\b'를 쓰면 'foo', 'foo.', 'bar foo baz'와는 매칭되나, 'foobar'와는 매칭되지 않는다. 
 +  * \B \b의 반대 케이스로 빈 문자와 매칭되지만, 단어의 앞뒤에는 적용되지 않는다. 예를 들어 r'py\B'는 'python', 'py3', 'py2'와는 매칭되나, 'py', 'py.', 'py!'와는 매칭되지 않는다.  
 +  * \d 숫자와 매칭된다. [0-9]와 같다 
 +  * \D 숫자가 아닌 것들과 매칭된다. [^0-9]와 같다. 
 +  * \s 공백 문자들. [ \t\n\r\f\v] 
 +  * \S 공백 문자가 아닌 문자들. 
 +  * \w 알파벳, 숫자, 언더스코어들 말한다. LOCALE, UNICODE가 사용되면 알파벳은 영향을 받는다. 
 +  * \W non-alphanumeirc 
 +  * \Z 문자열의 끝. 
 + 
 +===== 참고 사이트 ===== 
 +* http://regexpal.com/ 정규식 연습. 일부 지원되지 않는 표현도 있다. 
 +       
research/pythonregularexpression.1389245136.txt.gz · 마지막으로 수정됨: 2014/10/09 21:23 (바깥 편집)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki