학습을 위해 데이터를 가져오다보면
종종(아니 엄청 자주) 텍스트 사이에 특수문자가 있는 경우가 있다.
말뭉치나 문장으로 할 때 좀 더 좋은 성능을 위해 깔끔하게 문장을 다듬는 경우들이 있는데
이럴 때 쓰이고는 한다.
(그 외에도 토큰화를 위한다던지 등등 많은 경우들이 있지만)
방법은 크게 2가지가 있는데,
1. replace를 사용하기
replace 메서드를 사용해서 첫번째 파라미터에 바꿨으면 하는거, 두번째는 바꿀거 를 작성하면 된다.
그렇다면 따란 하고 바뀐다.
2. 정규표현식을 사용한 re.sub
파이썬에서 정규표현식을 사용할 때는 import re 를 사용한다.
그 중에서 sub는 정규식을 지정한 문자열을 바꿔주는 메서드이다.
정규식 관련 ▶ https://dev-adela.tistory.com/135
위에 예시로 했던 text를 바탕으로 해보자면
\uAC00 - \uD7A30 은 가 - 힣 까지의 모든 한글을 의미하는데,
모든 한글을 지우고나니 숫자랑 특수문자만 남았다.
만약에 반대로 한글만 남기고 싶다면 어떻게 해야하냐면
^ 이거를 추가해주면 된다.
반대로 했더니 띄어쓰기까지 다 날라가버렸다.
그래서 띄어쓰기를 살리려면 정규표현식을 사용해서 \s 를 추가해주면된다.
추가하니 띄어쓰기는 그대로 살았다.
응용을 해보자면
이렇게 특수문자 잔뜩인 문장을 정규식을 사용해 한다면 문자만 남길 수 있다.
'Python > 개념익히기' 카테고리의 다른 글
시계열 데이터로 다양한 사례 다뤄보기 (0) | 2023.07.18 |
---|---|
datetime 값 추출하기 - 인덱스 / dt접근자 (0) | 2023.07.17 |
날짜와 시간을 처리하는 datetime (1) / 시간형식지정자 (0) | 2023.07.17 |
CSV 파일 만들기 (0) | 2023.07.10 |
python 문자열 포매팅 / format (0) | 2023.07.03 |