Regular Expression 정규표현식
특정한 문자의 패턴을 정의하는 방식
특정한 규칙을 가진 문자열 탐색
ex. 이메일 주소만 추출, 전화번호만 추출, ip주소만 추출
정규표현식 활용 방법
- 데이터 수집하기
특정한 패턴을 갖는 데이터만 수집 - 데이터 전처리하기
특정 패턴을 갖고 있는 데이터 제거
정규표현식 활용 예시
파이썬에서 정규표현식을 사용하기 위해서는 re라는 모듈 불러와서 사용
# 휴대폰 번호 가운데 자리를 *로 변경
data = \
"""kim 010-1234-5678
park 010-8765-4321"""
# 정규표현식 미사용
result = []
for line in data.split('\n'):
tmp_result = []
for word in line.split(' '):
if len(word) == 13 and word[:3].isdigit() and word[4:8].isdigit() and word[9:].isdigit(): # 숫자인지 검사
word = word[:4] + "****" + word[8:]
tmp_result.append(word)
result.append(" ".join(tmp_result))
# 정규표현식 사용
import re
pattern = re.compile("(\d{3})[-](\d{4})[-](\d{4})")
print(pattern.sub("\g<1>-****-\g<3>", data))
⇒ 코드가 훨씬 간단해 짐
정규표현식은 python에서만 사용되는 것이 아닌 여러 프로그래밍 언어에서도 활용
'2023_국민대 > 텍스트 데이터 분석' 카테고리의 다른 글
[텍데분] Web Scraping 1 (0) | 2023.04.15 |
---|---|
[텍데분] Regular Expression 3 (0) | 2023.04.12 |
[텍데분] Regular Expression 2 (0) | 2023.04.12 |
[텍데분] Text Analytics 소개 (0) | 2023.04.11 |
[텍데분] Data Science 소개 (0) | 2023.04.11 |