文字ベクトルから数字で始まる要素を抽出したいのですが、POSIX正規表現の構文について理解できないことがあります。
私はそれを思うだろう
vec <- c("012 foo", "305 bar", "other", "notIt 7")
grep(pattern="[:digit:]", x=vec)
1 2 4
それらはどこかに数字がある4つの要素であるため、戻ります。しかし実際にはそれは戻ります3 4
。
要素1はゼロで始まるため、同様に期待どおりにgrep(pattern="^0", x=vec)
戻ります。1
ただし、これらは数字で始まる要素であるため、grep(pattern="^[:digit:]", x=vec)
返さinteger(0)
れると思いますが、返されます。1 2
構文をどのように誤解していますか?