pattern {operators} | R Documentation |
Set of convenience functions to handle strings and pattern matching.
These are basically
companion binary operators for the classic R function
grep
and regexpr
.
x %~% rx x %!~% rx x %~*% rx x %!~*% rx x %~+% rx x %!~+% rx
x |
text to manipulate |
rx |
regular expression |
%~%
: gives a logical vector indicating which elements of x
match the regular expression rx
. %!~%
is the negation of
%~%
%~*%
: gives a single logical indicating if all the elements
of x
are matching the regular expression rx
. %!~*%
is the
negation of %~*%
.
%~+%
: gives a single logical indicating if any
element of x
matches the regular expression rx
. %!~+%
is the negation of %~+%
.
The matching is done using a modified version of the
regexpr
function.
The modification is performed by applying the
operators.regexpr
option to the regexpr
function
via the %but%
operator.
The default version of regexpr
enables the perl
and
extended
options. See %but%
for details.
Romain Francois <francoisromain@free.fr>
grep, gsub, %~|%
for regular expression filters
txt <- c("arm","foot","lefroo", "bafoobar") txt %~% "foo" txt %!~% "foo" txt %~*% "foo" txt %~+% "foo" txt %!~*% "foo" txt %!~+% "foo" txt %~% "[a-z]" txt %!~% "[a-z]" txt %~*% "[a-z]" txt %~+% "[a-z]" txt %!~*% "[a-z]" txt %!~+% "[a-z]" cols <- colors() cols[ cols %~% "^blue" ] # see also %~|% ## needs perl regular expression for the \\d, see %but% with( options( operators.regexpr = "p" ), { cols[ cols %!~% "\\d$" ] } )