stringr (version 1.5.0)

str_count: Count number of matches


Counts the number of times pattern is found within each element of string.


str_count(string, pattern = "")


An integer vector the same length as string/pattern.



Input vector. Either a character vector, or something coercible to one.


Pattern to look for.

The default interpretation is a regular expression, as described in vignette("regular-expressions"). Use regex() for finer control of the matching behaviour.

Match a fixed string (i.e. by comparing only bytes), using fixed(). This is fast, but approximate. Generally, for matching human text, you'll want coll() which respects character matching rules for the specified locale.

Match character, word, line and sentence boundaries with boundary(). An empty pattern, "", is equivalent to boundary("character").

See Also

stringi::stri_count() which this function wraps.

str_locate()/str_locate_all() to locate position of matches


Run this code
fruit <- c("apple", "banana", "pear", "pineapple")
str_count(fruit, "a")
str_count(fruit, "p")
str_count(fruit, "e")
str_count(fruit, c("a", "b", "p", "p"))

str_count(c("a.", "...", ".a.a"), ".")
str_count(c("a.", "...", ".a.a"), fixed("."))

Run the code above in your browser using DataCamp Workspace