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] "μ"

참고자료