I\'d like to extract elements beginning with digits from a character vector but there\'s something about POSIX regular expression syntax that I don\'t understand.
I
Try
grep(pattern="[[:digit:]]", x=vec)
instead as the 'meta-patterns' between colons usually require double brackets.
man 7 regex
Within a bracket expression, the name of a character class enclosed in "[:" and ":]" stands for the list of all characters belonging to that class. Standard character class names are:
alnum digit punct alpha graph space blank lower upper cntrl print xdigit
Therefore a character class that is the sole member of a bracket expression will look like double-brackets, such as [[:digit:]]
. As another example, consider that [[:alnum:]]
is equivalent to [[:alpha:][:digit:]]
.
Another solution
grep(pattern="\\d", x=vec)