2016-08-26 8 views
4

처음에는 특정 문자열을 찾으려면 grep을 사용하는 것을 알고, ^을 사용하지만 어떻게 변수와 함께 사용합니까?^를 변수와 함께 사용하기

txt <- c("the cat ate the bill", "bill was late") 

다음

grep("^bill", txt) 

반환 2.

변수 단어 x을 입력으로 사용하여 txt의 행이 해당 단어로 시작하는지 확인하는 함수를 작성하고 싶습니다. 내 첫 번째 시도는 다음과 같습니다

extract_word<-function(x){ 
        grep(^x, txt) 
        } 

하지만 오류가 발생합니다 :

error unexpected^in: "extract_word<-function(x, txt){ grep(^

+1

,이 기능은 startsWith''에 의해 제공됩니다 paste0는 공백과 함께 문자열을 고집에 편리 txt, x)' –

답변

7

greppattern 인수는 단지 문자열입니다. 패턴 문자열을 x의 값으로하고 앞에 ^을 넣으려면 해당 문자열을 만듭니다. ?

grep(paste0("^", x), txt) 

당신의 예를 사용 : -`startsWith (정규 표현식을 사용하지 않는

txt <- c("the cat ate the bill", "bill was late") 

x = 'bill' 
grep(paste0("^", x), txt) 
# [1] 2 
관련 문제