-
grep, greplR 2020. 9. 16. 10:10
R에서 특정 문자열이 포함되어 있는지 확인할 때 사용하면 유용한 내장함수 grep, grepl을 소개한다.
grep의 기본 사용법은 grep(패턴, x) 이다. 다음 예제를 보면 example에서 "pho"를 검색했고, 이에 해당하는 문자열이 example 백터에서 두 번째에 위치한다는 결과이다.
>example <- c("test", "phone") >grep("pho",example) 실행결과 [1] 2
value = TRUE 옵션을 사용하면 해당하는 문자열을 반환한다.
>grep("pho",example, value = T) 실행결과 [1] "phone"
ignore.case = TRUE 옵션은 대소문자를 무시해주는 옵션이다.
fixed = TRUE 옵션은 문자열과 정확하게 일치할 경우만 찾아주는 옵션이다.
다른 옵션보다 가장 상위로 작동한다. 사실 fixed = FALSE 옵션을 해줘도 크게 상관은 없는 것 같다. (사실 잘 모르겠다.) 다른 옵션과 함께 쓸 때 혹시나 원치않는 결과를 낼 것을 대비해 안전하게 TRUE로 해놓고 사용하는 느낌이다.
>grep("pHo",example, fixed = F, ignore.case = T) 실행결과 [1] 2 >grep("pHo",example, fixed = F, ignore.case = F) 실행결과 integer(0) >grep("pHo",example, fixed = T, ignore.case = T) 실행결과 integer(0) Warning message: In grep("pHo", example, fixed = T, ignore.case = T) : argument 'ignore.case = TRUE' will be ignored
grepl 은 grep 과 비슷한데 결과를 boolean으로 반환한다.
> grepl("pho",example) 실행결과 [1] FALSE TRUE
728x90