R - 为什么'regexpr()'在模式开始时找不到字符串?

时间:2015-11-26 15:39:39

标签: r grep

为什么regexpr()在这种情况下找不到单词foo

foobar <- data.frame(one=c("foo bar", "foo"))
regexpr("foo",foobar[,1])>1

[1] FALSE FALSE

但在这种情况下:

foobar <- data.frame(one=c("bar foo", " foo"))
regexpr("foo",foobar[,1])>1  

[1] TRUE TRUE

如果你能从一个解决方案中解释出来,那就太好了。 谢谢分享

1 个答案:

答案 0 :(得分:1)

原因是因为我们获得了regexpr

的位置索引
 regexpr("foo",foobar[,1])
 #[1] 1 1
 #attr(,"match.length")
 #[1] 3 3
 #attr(,"useBytes")
 #[1] TRUE

,对于第二个,它是

 #[1] 5 2