R: Find the 'n'th number after the 'm'th occurrence of a...

str_nth_number_after_mth {strex} | R Documentation

## Find the `n`th number after the `m`th occurrence of a pattern.

### Description

Given a string, a pattern and natural numbers `n` and `m`, find the `n`th number after the `m`th occurrence of the pattern.

### Usage

    str_nth_number_after_mth(string, pattern, n, m, decimals = FALSE,
      leading_decimals = decimals, negs = FALSE, sci = FALSE,
      commas = FALSE, leave_as_string = FALSE)

    str_nth_number_after_first(string, pattern, n, decimals = FALSE,
      leading_decimals = decimals, negs = FALSE, sci = FALSE,
      commas = FALSE, leave_as_string = FALSE)

    str_nth_number_after_last(string, pattern, n, decimals = FALSE,
      leading_decimals = decimals, negs = FALSE, sci = FALSE,
      commas = FALSE, leave_as_string = FALSE)

    str_first_number_after_mth(string, pattern, m, decimals = FALSE,
      leading_decimals = decimals, negs = FALSE, sci = FALSE,
      commas = FALSE, leave_as_string = FALSE)

    str_last_number_after_mth(string, pattern, m, decimals = FALSE,
      leading_decimals = decimals, negs = FALSE, sci = FALSE,
      commas = FALSE, leave_as_string = FALSE)

    str_first_number_after_first(string, pattern, decimals = FALSE,
      leading_decimals = decimals, negs = FALSE, sci = FALSE,
      commas = FALSE, leave_as_string = FALSE)

    str_first_number_after_last(string, pattern, decimals = FALSE,
      leading_decimals = decimals, negs = FALSE, sci = FALSE,
      commas = FALSE, leave_as_string = FALSE)

    str_last_number_after_first(string, pattern, decimals = FALSE,
      leading_decimals = decimals, negs = FALSE, sci = FALSE,
      commas = FALSE, leave_as_string = FALSE)

    str_last_number_after_last(string, pattern, decimals = FALSE,
      leading_decimals = decimals, negs = FALSE, sci = FALSE,
      commas = FALSE, leave_as_string = FALSE)

### Arguments

`string` | A character vector.
`pattern` | 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()`.
`n, m` | 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`.
`decimals` | Do you want to include the possibility of decimal numbers (`TRUE`) or not (`FALSE`, the default).
`leading_decimals` | Do you want to allow a leading decimal point to be the start of a number?
`negs` | Do you want to allow negative numbers? Note that double negatives are not handled here (see the examples).
`sci` | Make the search aware of scientific notation e.g. 2e3 is the same as 2000.
`commas` | 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)).
`leave_as_string` | Do you want to return the number as a string (`TRUE`) or as numeric (`FALSE`, the default)?

### Value

A numeric or character vector.

### See Also

Other numeric extractors: `str_extract_numbers`, `str_nth_number_before_mth`, `str_nth_number`

### Examples

    string <- c(
      "abc1abc2abc3abc4abc5abc6abc7abc8abc9",
      "abc1def2ghi3abc4def5ghi6abc7def8ghi9"
    )
    str_nth_number_after_mth(string, "abc", 1, 3)
    str_nth_number_after_mth(string, "abc", 2, 3)
    str_nth_number_after_first(string, "abc", 2)
    str_nth_number_after_last(string, "abc", -1)
    str_first_number_after_mth(string, "abc", 2)
    str_last_number_after_mth(string, "abc", 1)
    str_first_number_after_first(string, "abc")
    str_first_number_after_last(string, "abc")
    str_last_number_after_first(string, "abc")
    str_last_number_after_last(string, "abc")

[Package strex version 1.2.0 Index]