n
th number before the m
th occurrence of a pattern.nth_number_before_mth(string, pattern, n, m, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)str_nth_number_before_mth(string, pattern, n, m, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
nth_number_before_first(string, pattern, n, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
nth_number_before_last(string, pattern, n, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
first_number_before_mth(string, pattern, m, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
last_number_before_mth(string, pattern, m, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
first_number_before_first(string, pattern, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
first_number_before_last(string, pattern, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
last_number_before_first(string, pattern, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
last_number_before_last(string, pattern, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
str_nth_number_before_first(string, pattern, n, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
str_nth_number_before_last(string, pattern, n, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
str_first_number_before_mth(string, pattern, m, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
str_last_number_before_mth(string, pattern, m, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
str_first_number_before_first(string, pattern, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
str_first_number_before_last(string, pattern, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
str_last_number_before_first(string, pattern, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
str_last_number_before_last(string, pattern, decimals = FALSE,
leading_decimals = decimals, negs = FALSE, sci = FALSE,
commas = FALSE, leave_as_string = FALSE)
A character vector.
The pattern to look for.
The default interpretation is a regular expression, as described in stringi::stringi-search-regex.
To match a without regular expression (i.e. as a human would), use
coll(). For details see stringr::regex()
.
Vectors of integerish values. Must be either length 1 or have
length equal to the length of string
. Negative indices count from the
back: while 1
and 2
correspond to first and second, -1
and -2
correspond to last and second-last. 0
will return NA
.
Vectors of integerish values. Must be either length 1 or have
length equal to the length of string
. Negative indices count from the
back: while 1
and 2
correspond to first and second, -1
and -2
correspond to last and second-last. 0
will return NA
.
Do you want to include the possibility of decimal numbers
(TRUE
) or not (FALSE
, the default).
Do you want to allow a leading decimal point to be the start of a number?
Do you want to allow negative numbers? Note that double negatives are not handled here (see the examples).
Make the search aware of scientific notation e.g. 2e3 is the same as 2000.
Allow comma separators in numbers (i.e. interpret 1,100 as a single number (one thousand one hundred) rather than two numbers (one and one hundred)).
Do you want to return the number as a string (TRUE
)
or as numeric (FALSE
, the default)?