str_split
Split up a string into pieces.
Vectorised over string
and pattern
.
Usage
str_split(string, pattern, n = Inf, simplify = FALSE)
str_split_fixed(string, pattern, n)
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 stringisearchregex. Control options with
regex()
.Match a fixed string (i.e. by comparing only bytes), using
fixed(x)
. This is fast, but approximate. Generally, for matching human text, you'll wantcoll(x)
which respects character matching rules for the specified locale.Match character, word, line and sentence boundaries with
boundary()
. An empty pattern, "", is equivalent toboundary("character")
.  n
 number of pieces to return. Default (Inf) uses all
possible split positions.
For
str_split_fixed
, if n is greater than the number of pieces, the result will be padded with empty strings.  simplify
 If
FALSE
, the default, returns a list of character vectors. IfTRUE
returns a character matrix.
Value

For
str_split_fixed
, a character matrix with n
columns.
For str_split
, a list of character vectors.
See Also
stri_split
for the underlying implementation.
Examples
library(stringr)
fruits < c(
"apples and oranges and pears and bananas",
"pineapples and mangos and guavas"
)
str_split(fruits, " and ")
str_split(fruits, " and ", simplify = TRUE)
# Specify n to restrict the number of possible matches
str_split(fruits, " and ", n = 3)
str_split(fruits, " and ", n = 2)
# If n greater than number of pieces, no padding occurs
str_split(fruits, " and ", n = 5)
# Use fixed to return a character matrix
str_split_fixed(fruits, " and ", 3)
str_split_fixed(fruits, " and ", 4)
Community examples
z < 'World, Asia, India, Punjab and Jalandhar' # Option 1 str_split(z, ",\\s\\sand\\s") # Option 2 str_split(z, ",  and ")
```r datetime = "01/01/1900 00:00:00" #Displays split date #Splits string by space str_split(date, " ", simplify = TRUE) #Reference individual parts #Extracts date str_split(date, " ", simplify = TRUE)[,1] #Extracts time str_split(date, " ", simplify = TRUE)[,2] #Extracting year presents a problem when splitting by / #time is included with year str_split(date, "/", simplify = TRUE)[,3] #Extracting year only strtrim(str_split(date, "/", simplify = TRUE)[,3],4) ```