Split a string by any number of spaces
r, string, strsplit
Solution
Just use `strsplit` with `\\s+` to split on:
x <- "10012 ---- ---- ---- ---- CAB UNCH CAB"
x
# [1] "10012 ---- ---- ---- ---- CAB UNCH CAB"
strsplit(x, "\\s+")[[1]]
# [1] "10012" "----" "----" "----" "----" "CAB" "UNCH" "CAB"
length(.Last.value)
# [1] 8
Or, in this case, `scan` also works:
scan(text = x, what = "")
# Read 8 items
# [1] "10012" "----" "----" "----" "----" "CAB" "UNCH" "CAB"
Problem
I have the following string: ``` [1] "10012 ---- ---- ---- ---- CAB UNCH CAB" ``` I want to split this string by the gaps, but the gaps have a variable number of spaces. Is there a way to use `strsplit()` function to split this string and return a vector of 8 elements that has removed all of the gaps? One line of code is preferred.