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 columnsstart
andend
as 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, "")