testthat (version 2.3.2)

expect_match: Expectation: does string match a regular expression?

Description

Expectation: does string match a regular expression?

Usage

expect_match(
  object,
  regexp,
  perl = FALSE,
  fixed = FALSE,
  ...,
  all = TRUE,
  info = NULL,
  label = NULL
)

Arguments

object

Object to test.

Supports limited unquoting to make it easier to generate readable failures within a function or for loop. See quasi_label for more details.

regexp

Regular expression to test against.

perl

logical. Should Perl-compatible regexps be used?

fixed

logical. If TRUE, pattern is a string to be matched as is. Overrides all conflicting arguments.

...

Arguments passed on to base::grepl

ignore.case

if FALSE, the pattern matching is case sensitive and if TRUE, case is ignored during matching.

useBytes

logical. If TRUE the matching is done byte-by-byte rather than character-by-character. See ‘Details’.

all

Should all elements of actual value match regexp (TRUE), or does only one need to match (FALSE)

info

Extra information to be included in the message. This argument is soft-deprecated and should not be used in new code. Instead see alternatives in quasi_label.

label

Used to customise failure messages. For expert use only.

Details

expect_match() is a wrapper around grepl(). See its documentation for more detail about the individual arguments.

See Also

Other expectations: comparison-expectations, equality-expectations, expect_error(), expect_length(), expect_message(), expect_named(), expect_null(), expect_output(), expect_silent(), inheritance-expectations, logical-expectations

Examples

Run this code
# NOT RUN {
expect_match("Testing is fun", "fun")
expect_match("Testing is fun", "f.n")

# }
# NOT RUN {
expect_match("Testing is fun", "horrible")

# Zero-length inputs always fail
expect_match(character(), ".")
# }

Run the code above in your browser using DataCamp Workspace