close_btn
조회 수 70286 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

문자열을 다루는 데 있어 regular expression이 아주 다양하게 활용 될 수 있지만 복잡하고 익숙하지 않아 자주 쓰이고 있지 않습니다. 간략하게 몇몇예시를 통해 알아보지요 !

###########################################

grep("[au]", c("Equator", "North Pole", "South Pole"))
grep("o.e", c("Equator", "North Pole", "South Pole"))
grep("N..t", c("Equator", "North Pole", "South Pole"))

grep(".", c("abc", "de", "f.g"))
grep("\\.", c("abc", "de", "f.g"))
grep(".", c("abc", "de", "f.g"),fixed=TRUE)

 

> grep("[au]", c("Equator", "North Pole", "South Pole"))
[1] 1 3

이전 포스티이에서 알아보았듯 "[au]"는 regular expression 상으로 a 또는 u의 출현을 의미합니다. grep는 특정 패턴이 존재하는 문자열의 index를 알려주는 함수이므로 u와a가 포함된 Equator, u가 포함된 South Pole의 위치를 반환하였습니다.

> grep("o.e", c("Equator", "North Pole", "South Pole"))
[1] 2 3> grep("N..t", c("Equator", "North Pole", "South Pole"))
[1] 2

"."은 임의의글자하나를 의미합니다 따라서 "o.e"는 pole, gole 등을 패턴으로 포함하게 되겠지요.
Pole을 포함하고 있는 North Pole, South Pole의 위치가 반환되었습니다. N..t 는 North를 포함하였지요.

> grep(".", c("abc", "de", "f.g"))
[1] 1 2 3
> grep("\\.", c("abc", "de", "f.g"))
[1] 3
> grep(".", c("abc", "de", "f.g"),fixed=TRUE)
[1] 3

이 때 regular expression의 문법에 사용되는 "."을 패턴자체로 인식하게 하려면 어찌해야 할까요 ? 위의 예시에서 "f.g"를 보면 "."이 포함되어 있습니다. 이것을 포함하는 문자열 index를 얻어오기 위해서는 "\\."으로 역슬래쉬 두번을 통해 일반 문자라는 것을 알려주거나 fixed 옵션을 TRUE로 만들어 "."을 문자열로 인식하게끔 합니다.

 

 

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 초급 R 강의 게시판 이용 관련 공지사항 1 DataMarket 2014.05.21 511930
50 초급 [BigData - R강의 초급] 정규표현식 regular expression 4강 (1) – Anchors "^", "$" 2 DataMarket2 2014.05.23 101688
49 초급 [BigData - R강의 초급] 정규표현식 regular expression 3강 – alternation "|" DataMarket2 2014.05.23 96711
48 초급 [BigData - R강의 초급] 정규표현식 regular expression 2강(4) – 게으른 수량자 "+?", "*?", "{n,}?" 1 DataMarket2 2014.05.23 110279
47 초급 [BigData - R강의 초급] 정규표현식 regular expression 2강(3) – 수량자 "?" 1 DataMarket2 2014.05.23 109661
46 초급 [BigData - R강의 초급] 정규표현식 regular expression 2강(2) – 수량자 {} 1 DataMarket2 2014.05.23 104353
45 초급 [BigData - R강의 초급] 정규표현식 regular expression 2강(1) – 수량자 “+”, “*” DataMarket2 2014.05.23 107130
44 초급 [BigData - R강의 초급] 정규표현식 regular expression 1강(4) – 문자열 형태표현 ".", "\W", "\D", "\S" DataMarket2 2014.05.23 94868
43 초급 [BigData - R강의 초급] 정규표현식 regular expression 1강(3) – 문자열 형태표현 "\p{Hangul}"(한글), 특수문자 2 DataMarket2 2014.05.23 102202
42 초급 [BigData - R강의 초급] 정규표현식 regular expression 1강(2) – 문자열 형태표현 “\d”, “\s” DataMarket2 2014.05.23 93642
41 초급 [BigData - R강의 초급] 정규표현식 regular expression 1강(1) – 문자열 형태표현 ".", "\w" 3 DataMarket2 2014.05.23 113700
40 초급 [BigData - R강의 초급] 따옴표를 문자열로 인식시키려면? - escaper \ DataMarket2 2014.05.23 69634
» 초급 [BigData - R강의 초급] 문자열 패턴 regular expression 연습 DataMarket2 2014.05.23 70286
38 초급 [BigData - R강의 초급] 문자열 검색 – grep, regexpr, gregexpr DataMarket2 2014.05.23 100683
37 초급 [BigData - R강의 초급] 문자열 찾아바꾸기 – sub, gsub 1 DataMarket2 2014.05.23 90896
36 초급 [BigData - R강의 초급] 문자열 나누기 – strsplit, str_split DataMarket2 2014.05.23 105946
35 초급 [BigData - R강의 초급] 문자열 일부 추출 – substr(), str_sub() 비교 2 DataMarket2 2014.05.23 102217
34 초급 [BigData - R강의 초급] 문자열 포멧 출력 – sprintf 함수 1 DataMarket2 2014.05.23 59769
33 초급 [BigData - R강의 초급] 문자열 길이 – nchar 함수 1 DataMarket2 2014.05.23 57840
32 초급 [BigData - R강의 초급] 문자열 이어붙이기 - paste, paste0 함수 1 DataMarket2 2014.05.23 69636
31 초급 [BigData - R강의 초급] 결측치 처리 함수 - complete.cases DataMarket2 2014.05.23 50921
Board Pagination ‹ Prev 1 2 ... 3 Next ›
/ 3

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5