like.Rd
Convenient wrapper around grep
to match a pattern: a %like% b
. It always returns a logical
vector and is always case-insensitive. Also, pattern
(b
) can be as long as x
(a
) to compare items of each index in both vectors.
like(x, pattern) x %like% pattern
x | a character vector where matches are sought, or an
object which can be coerced by |
---|---|
pattern | character string containing a regular expression
(or character string for |
Idea from the like
function from the data.table
package, but made it case insensitive at default and let it support multiple patterns.
A logical
vector
Using RStudio? This function can also be inserted from the Addins menu and can have its own Keyboard Shortcut like Ctrl+Shift+L or Cmd+Shift+L (see Tools > Modify Keyboard Shortcuts...).
# NOT RUN { # simple test a <- "This is a test" b <- "TEST" a %like% b #> TRUE b %like% a #> FALSE # also supports multiple patterns, length must be equal to x a <- c("Test case", "Something different", "Yet another thing") b <- c("case", "diff", "yet") a %like% b #> TRUE TRUE TRUE # get frequencies of bacteria whose name start with 'Ent' or 'ent' library(dplyr) septic_patients %>% left_join_microorganisms() %>% filter(genus %like% '^ent') %>% freq(genus, species) # }