parse_nr <- function(line) {
m <- stringr::str_extract(line, "number=(\\d+)", group=1)
if (is.na(m)) list()
else store("nr", as.numeric(m))
}
p <- function() {
match_s(parse_nr) %then%
exactly(retrieve("nr"), literal("A"))
}
p()(c("number=3", "A", "A", "A")) # success
p()(c("number=2", "A", "A", "A")) # failure
Run the code above in your browser using DataLab