Groups
( ) : subgroup으로 저장
- Capturing group
→ subgroup의 토큰들을 그룹화함
▶️ source 값에 새로운 문장을 저장함
▶️ 중간에 있는 \n은 줄 나눔을 의미함
▶️ (.+) : 모든 한 자리 수 이상의 문자를 찾아라
▶️ \. : 어떠한 역할을 하는 것이 아닌 문자 그대로의 .을 출력함
▶️ {1}(word|pdf) : 한 번 이상 연속해서 나오고 word 혹은 pdf로 끝나는 말을 찾아라
★ word|pdf → 중간에 띄어쓰기 있으면 안 됨 ★
- Non-capturing Group
→ capturing 하지 않고 여러 토큰들을 그룹화함 (?:)
▶️ .+ : 모든 한자리 수 이상의 문자를 찾아라
▶️ \. : 어떠한 역할을 하는 것이 아닌 문자 그대로의 .을 출력함
▶️ (?: jpg|word) : jpg 혹은 word로 끝나는 말을 non-capturing으로 출력하라
★ capturing group과의 차이점 ⇒ ()로 묶여있지 않음 ★
- lookahead / lookbehind
→ 패턴만 찾고 결과는 문자열에 출력되지 않음
...(?=) : lookahead, 전방 탐색. 패턴을 찾고 앞의 문자열을 출력함
(?<=)... : lookbehind, 후방탐색. 패턴 찾고 뒤의 문자열을 출력함
▶️ .+ : 모든 한자리 수 이상의 문자를 찾아라
▶️ (?=jpg|word) : 전방 탐색으로 jpg 혹은 word로 끝나는 말을 분석하라
⇒ word 앞 글자인 predict. 출력 / jpg 앞 글자인 winter. 출력
▶️ (?<=) : 후방 탐색
▶️ \.{1} : 어떠한 역할을 하는 것이 아닌 문자 그대로의 .이 한번 연속 나오는 경우를 분석함
▶️ .+ : 앞에 나온 조건에 해당하는 한 자리 이상의 모든 문자를 출력함
⇒ 문자 그대로의 .을 찾아 뒷 글자인 word / pdf / jpg / bmp를 출력함
'Data Analysis' 카테고리의 다른 글
머신러닝(Machine Learning) (0) | 2021.09.09 |
---|---|
데이터 추출 연습 (0) | 2021.09.09 |
[ Python ] 범위 (0) | 2021.09.09 |
[ Python ] 수량자 (0) | 2021.09.09 |
[ Python ] 이스케이프 (0) | 2021.09.09 |