Wyrażenia regularne R: nieoczekiwane zachowanie „[: cyfra:]”

Chciałbym wyodrębnić elementy zaczynające się od cyfr z wektora znaków, ale jest coś w składni wyrażeń regularnych POSIX, której nie rozumiem.

Myślę, że tak

vec <- c("012 foo", "305 bar", "other", "notIt 7")
grep(pattern="[:digit:]", x=vec)

wróci1 2 4&nbsp;ponieważ są to cztery elementy, które mają gdzieś cyfry. Ale tak naprawdę powraca3 4.

Równieżgrep(pattern="^0", x=vec)&nbsp;zwraca1&nbsp;jak oczekiwałbym, ponieważ element 1 zaczyna się od zera. jednakgrep(pattern="^[:digit:]", x=vec)&nbsp;zwracainteger(0)&nbsp;mając na uwadze, że spodziewałbym się, że wróci1 2&nbsp;ponieważ są to elementy zaczynające się cyframi.

Jak nie rozumiem składni?