like.Rd
Convenient wrapper around base::grep()
to match a pattern: a %like% b
. It always returns a logical
vector and is always case-insensitive (use a %like_case% b
for case-sensitive matching). Also, pattern
(b) can be as long as x
(a) to compare items of each index in both vectors, or can both have the same length to iterate over all cases.
like(x, pattern, ignore.case = TRUE) x %like% pattern x %like_case% 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 |
ignore.case | if |
Idea from the like
function from the data.table
package, but made it case insensitive at default and let it support multiple patterns. Also, if the regex fails the first time, it tries again with perl = TRUE
.
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...
).
On our website https://msberends.gitlab.io/AMR you can find a tutorial about how to conduct AMR analysis, the complete documentation of all functions (which reads a lot easier than here in R) and an example analysis using WHONET data.
# 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) example_isolates %>% filter(mo_genus(mo) %like% '^ent') %>% freq(mo_fullname(mo))