3 문자열 처리와 정규표현식
학습 목표
- 텍스트 문자 처리에 있어 가장 기본인 정규 표현식(regular rexpression)에 대해 알아본다.
- R에서 기본으로 제공하는 문자열 차리 함수에 대해 알아본다
학습 필요성
실제 데이터는 다양한 형태의 텍스트(문자열)을 포함
R에서 문자열을 이용한 반복 계산 가능
대규모 텍스트 데이터(웹문서, 블로그, SNS, 뉴스, 논문, 상품평, …)로부터 새로운 정보 및 지식을 도출하기 위한 텍스트 마이닝이 대두 되면서 텍스트 처리에 대한 기본적 이해 필요
여러 문자열로 이루어진 방대한 텍스트 벡터에서 특정 패턴을 갖고 있는 구문을 선별해야 할 경우, 패턴을 도식화 할 수 있는 함축적 표현이 필요 \(\rightarrow\) 정규 표현식
정규 표현식의 기본함수
grep()
,grepl()
: 문자형 벡터에서 정규 표현식 또는 문자 패턴의 일치를 검색.grep()
: 일치하는 특정 문자열을 포함하는 문자형 벡터 또는 인덱스를 반환grepl()
: 문자열 포함 여부에 대한 논리값 반환
regexpr()
,gregexpr()
: 문자형 벡터에서 정규 표현식 또는 문자 패턴과 일치하는 원소를 검색하고, 일치가 시작되는 문자열의 인덱스와 일치 길이를 반환sub()
,gsub()
: 문자열 벡터에서 정규 표현식 또는 문자 패턴과 일치하는 원소를 검색하고 해당 문자열을 다른 문자열로 변경regexec()
:regexpr()
과 동일하게 일치가 시작되는 문자열의 인덱스를 반환하지만 괄호로 묶인 하위 표현식의 위치를 추가로 반환
Note: 정규 표현식 및 문자열 처리를 위한 함수의 종류는 매우 다양하지만, 본 강의에서는 정규 표현식의 이해를 위해 일부만 소개할 것임
문자열 기초
- 탈출 지시자(escape indicator):
\
- 키보드로 입력할 수 없는 문자를 입력하기 위해 사용
- 문자열에 백슬래쉬
\
를 입력하려면\\
로 표시
[1] "\""
[1] "'"
"
\
'
abc
abc
[1] "μ"
참고자료
- Youtube 동영상: 영어 강의가 옥의 티…
- regexr.com: 정규 표현식의 패턴 확인 가능
- Wikibooks R programming: Text processing