R: Count the Number of Pattern Matches

stri_count {stringi} | R Documentation

## Count the Number of Pattern Matches

### Description

These functions count the number of occurrences of a pattern in a string.

### Usage

    stri_count(str, ..., regex, fixed, coll, charclass)

    stri_count_charclass(str, pattern)

    stri_count_coll(str, pattern, ..., opts_collator = NULL)

    stri_count_fixed(str, pattern, ..., opts_fixed = NULL)

    stri_count_regex(str, pattern, ..., opts_regex = NULL)

### Arguments

`str` | character vector with strings to search in
`...` | supplementary arguments passed to the underlying functions, including additional settings for `opts_collator`, `opts_regex`, `opts_fixed`, and so on
`pattern, regex, fixed, coll, charclass` | character vector defining search patterns; for more details refer to stringi-search
`opts_collator, opts_fixed, opts_regex` | a named list used to tune up a search engine's settings; see `stri_opts_collator`, `stri_opts_fixed`, and `stri_opts_regex`, respectively; `NULL` for default settings;

### Details

Vectorized over `str` and `pattern`.

If `pattern` is empty, then the result is `NA` and a warning is generated.

`stri_count` is a convenience function. It calls either `stri_count_regex`, `stri_count_fixed`, `stri_count_coll`, or `stri_count_charclass`, depending on the argument used; relying on one of those underlying functions will be faster.

### Value

All the functions return an integer vector.

### See Also

Other search_count: `stri_count_boundaries`, `stringi-search`

### Examples

    s <- "Lorem ipsum dolor sit amet, consectetur adipisicing elit."
    stri_count(s, fixed="dolor")
    stri_count(s, regex="\\p{L}+")

    stri_count_fixed(s, " ")
    stri_count_fixed(s, "o")
    stri_count_fixed(s, "it")
    stri_count_fixed(s, letters)
    stri_count_fixed("babab", "b")
    stri_count_fixed(c("stringi", "123"), "string")

    stri_count_charclass(c("stRRRingi", "STrrrINGI", "123"),
       c("\\p{Ll}", "\\p{Lu}", "\\p{Zs}"))
    stri_count_charclass(" \t\n", "\\p{WHITE_SPACE}") # white space - binary property
    stri_count_charclass(" \t\n", "\\p{Z}") # whitespace - general category (note the difference)

    stri_count_regex(s, "(s|el)it")
    stri_count_regex(s, "i.i")
    stri_count_regex(s, ".it")
    stri_count_regex("bab baab baaab", c("b.*?b", "b.b"))
    stri_count_regex(c("stringi", "123"), "^(s|1)")

[Package stringi version 1.2.4 Index]