| str_locate {stringr} | R Documentation |
Find location of match
Description
str_locate() returns the start and end position of the first match;
str_locate_all() returns the start and end position of each match.
Because the start and end values are inclusive, zero-length matches
(e.g. $, ^, \\b) will have an end that is smaller than start.
Usage
str_locate(string, pattern)
str_locate_all(string, pattern)
Arguments
string |
Input vector. Either a character vector, or something coercible to one. |
pattern |
Pattern to look for. The default interpretation is a regular expression, as described in
Match a fixed string (i.e. by comparing only bytes), using
Match character, word, line and sentence boundaries with
|
Value
-
str_locate()returns an integer matrix with two columns and one row for each element ofstring. The first column,start, gives the position at the start of the match, and the second column,end, gives the position of the end. -
str_locate_all()returns a list of integer matrices with the same length asstring/pattern. The matrices have columnsstartandendas above, and one row for each match.
See Also
str_extract() for a convenient way of extracting matches,
stringi::stri_locate() for the underlying implementation.
Examples
fruit <- c("apple", "banana", "pear", "pineapple")
str_locate(fruit, "$")
str_locate(fruit, "a")
str_locate(fruit, "e")
str_locate(fruit, c("a", "b", "p", "p"))
str_locate_all(fruit, "a")
str_locate_all(fruit, "e")
str_locate_all(fruit, c("a", "b", "p", "p"))
# Find location of every character
str_locate_all(fruit, "")