我知道grep在R 中使用,如果你想在开头找到某个字符串,你可以使用^,但是如何将它与变量一起使用?
txt <- c("the cat ate the bill", "bill was late")
Run Code Online (Sandbox Code Playgroud)
然后
grep("^bill", txt)
Run Code Online (Sandbox Code Playgroud)
回报2.
我想编写一个函数,它将一个变量字x作为输入,并查找一行是否txt以该字开头.我的第一次尝试是:
extract_word<-function(x){
grep(^x, txt)
}
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误:
错误意外^ in:"extract_word <-function(x,txt){grep(^
该pattern给的说法grep只是一个字符串.如果您希望模式字符串是前面的xa 的值^,那么只需创建该字符串即可.paste0将字符串粘在一起没有空格是很方便的:
grep(paste0("^", x), txt)
Run Code Online (Sandbox Code Playgroud)
使用你的例子:
txt <- c("the cat ate the bill", "bill was late")
x = 'bill'
grep(paste0("^", x), txt)
# [1] 2
Run Code Online (Sandbox Code Playgroud)