like | R Documentation |
Convenient wrapper around grepl()
to match a pattern: x %like% pattern
. It always returns a logical
vector and is always case-insensitive (use x %like_case% pattern
for case-sensitive matching). Also, pattern
can be as long as x
to compare items of each index in both vectors, or they both can have the same length to iterate over all cases.
like(x, pattern, ignore.case = TRUE)
x %like% pattern
x %unlike% pattern
x %like_case% pattern
x %unlike_case% pattern
x |
a character vector where matches are sought, or an object which can be coerced by |
pattern |
a character vector containing regular expressions (or a character string for |
ignore.case |
if |
These like()
and %like%
/%unlike%
functions:
Are case-insensitive (use %like_case%
/%unlike_case%
for case-sensitive matching)
Support multiple patterns
Check if pattern
is a valid regular expression and sets fixed = TRUE
if not, to greatly improve speed (vectorised over pattern
)
Always use compatibility with Perl unless fixed = TRUE
, to greatly improve speed
Using RStudio? The %like%
/%unlike%
functions can also be directly inserted in your code from the Addins menu and can have its own keyboard shortcut like Shift+Ctrl+L
or Shift+Cmd+L
(see menu Tools
> Modify Keyboard Shortcuts...
). If you keep pressing your shortcut, the inserted text will be iterated over %like%
-> %unlike%
-> %like_case%
-> %unlike_case%
.
A logical vector
Idea from the like
function from the data.table
package, although altered as explained in Details.
grepl()
a <- "This is a test"
b <- "TEST"
a %like% b
b %like% a
# also supports multiple patterns
a <- c("Test case", "Something different", "Yet another thing")
b <- c( "case", "diff", "yet")
a %like% b
a %unlike% b
a[1] %like% b
a %like% b[1]
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.