-
[나도 코딩] 웹 스크래핑 6. 정규식 기본 2Programing Language/Python 2020. 11. 5. 19:45반응형
웹 스크래핑
정규식 기본 2
이 글은 나도코딩님의 [파이썬 코딩 무료 강의 (활용편3)]을 보고 공부한 내용입니다.
웹 스크래핑 6. 정규식 기본편 공부하고 오기
1. 정규식 이해하기
정규식(regular expression)이란?
- 정해진 형태를 의미
- 약어로 re라고 함
- ex1) 주민등록번호의 정규식: 앞 숫자 6 - 뒤 숫자 7
- 111111-0300303 (O) -> 올바른 정규식
- dfdfdf-dofiudo (X) -> 올바르지 않은 정규식
2. 정규식 실습 2
정규식 기본 코드 복습하기
## 복습하기 import re # 정규식(원하는 형태) 지정 p = re.compile("ca.e") # 매칭하기 m = p.match("주어진 식 or 비교할 문자열") # 확인하기 print(m.group())
정규식 기본 문법 정리
- 정규식 지정
complie 정규식을 지정할 때 사용 - 정규식과 주어진 식 비교
match 주어진 문자열 처음부터 일치하는지 확인 search 주어진 문자열 중에 일치하는게 있는지 확인 findall 일치하는 모든 부분을 리스트 형태로 반환 - 비교 후 확인
group 일치하는 문자열 반환 string 입력받은 문자열을 그대로 출력 start 일치하는 문자열의 시작 index 출력 end 일치하는 문자여르이 끝 index 출력 span 일치하는 문자열의 시작과 끝 index 출력 - 실습1
- match 함수: 주어진 식이 정규식의 앞에서부터 일치하는지 확인하기
# 함수 def print_check(m): if m: print("m.group :", m.group()) print("m.string :", m.string) print("m.start :", m.start()) print("m.end :", m.end()) print("m.span :", m.span()) else: print("매칭되지 않습니다.") # 정규식 지정 import re p = re.compile("ca.e") # match 해보기 m = p.match("careless") # 비교 후 확인 print_check(m)
결과
- 정규식: ca.r
- 주어진 식: careless
m.group: 일치하는 문자열을 반환함
care m.string: 입력받은 문자열을 그대로 출력
careless m.start: 일치하는 문자열의 시작 index
0 m.end: 일치하는 문자열의 끝 index
4 m.span: 일치하는 문자열의 시작과 끝 index (0,4) - 실습2
- search 함수: 주어진 식이 정규식을 일치하는지 확인하기
# 함수 def print_check(m): if m: print("m.group :", m.group()) print("m.string :", m.string) print("m.start :", m.start()) print("m.end :", m.end()) print("m.span :", m.span()) else: print("매칭되지 않습니다.") # 정규식 지정 import re p = re.compile("ca.e") # search 해보기 m = p.search("good care cafe") # 비교 후 확인 print_check(m)
결과
- 정규식: ca.r
- 주어진 식: good care cafe
m.group: 일치하는 문자열을 반환함
care m.string: 입력받은 문자열을 그대로 출력
good care cafe m.start: 일치하는 문자열의 시작 index
5 m.end: 일치하는 문자열의 끝 index
9 m.span: 일치하는 문자열의 시작과 끝 index (5,9) - 실습3
- findall 함수: 매칭되는 문자열 list 형태로 전환
# 정규식 지정 import re p = re.compile("ca.e") # findall 해보기 m = p.findall("good care cafe") # 비교 후 확인 print(m)
결과
- 정규식: ca.r
- 주어진 식: good care cafe
findall ["care", "cafe"] 이 글은 나도코딩님의 [파이썬 코딩 무료 강의 (활용편3)]을 보고 공부한 내용입니다.
반응형'Programing Language > Python' 카테고리의 다른 글
[Python] 주피터 노트북 경로설정 & 절대경로 상대경로 (0) 2020.12.12 [나도 코딩] 웹 스크래핑 6. User Agent (0) 2020.11.09 [나도 코딩] 웹 스크래핑 5. 정규식 기본 1 (0) 2020.11.04 Visual Studio code에서 Requests 패키지가 설치가 안될 때 (0) 2020.11.03 [나도 코딩] 웹 스크래핑 4. Requests (0) 2020.11.03