我想分割一个字符串,然后将其传递给一个列表。
例如:
string <- "hi hello"
拆分并放入名为l
的列表后,l[1]
应该给我hi
,而l[2]
应该给我hello
。
很难搜索早期的问题,但找不到这个。
答案 0 :(得分:1)
在这里,你有
> l <- strsplit(string, " ")[[1]]
[1] "hi" "hello"
> l[1]
[1] "hi"
> l[2]
[1] "hello"
答案 1 :(得分:1)
这是另一种选择。而不是split
ting,匹配你想要的东西。
> x <- 'hi hello'
> l <- regmatches(x, gregexpr('\\S+', x))[[1]]
> l[1]
## [1] "hi"
> l[2]
## [1] "hello"
答案 2 :(得分:0)
将分隔的字符串放入单独的列表中。
string <- "hi hello"
l <- lapply(unlist(strsplit(string, split= " ")), FUN = function(x) x)
[[1]]
[1] "hi"
[[2]]
[1] "hello"
答案 3 :(得分:0)
哦,到底是什么......
采取完全不同的方法,因为你在空格上分裂,你也可以轻松使用scan
:
l <- scan(what = "", text = string)
# Read 2 items
l[1]
# [1] "hi"
l[2]
# [1] "hello"
请注意,如果这是你想要的,那么你的术语是关闭的。在R中,这是vector
。如果您想要list
,请scan
包裹as.list
。
答案 4 :(得分:0)
尝试:
l = unlist(strsplit(string, ' '))
l[1]
[1] "hi"
l[2]
[1] "hello"