【发布时间】:2018-04-26 13:26:39
【问题描述】:
我有一个类似于"HLeelmloon" 的字符串,这是两个交织在一起的单词。我怎样才能把它分成两个单独的词,在交替的字母上分开?
我可以使用strsplit() 和for 循环将交替的字母分配给两个新向量,然后加入列表,但这似乎很冗长:
string <- "HLeelmloon"
split<-el(strsplit(string,''))
> split
[1] "H" "L" "e" "e" "l" "m" "l" "o" "o" "n"
word1<-c()
word2<-c()
for(i in 1:length(split)){
if(i %% 2 == 1){
word1<-append(word1, split[i])
} else {
word2<-append(word2, split[i])
}
}
word1 = paste0(word1, collapse = '')
word2 = paste0(word2, collapse = '')
> word1
[1] "Hello"
> word2
[1] "Lemon"
我的问题是它不是很优雅,如果我想将字符串分成 N 个不同的单词,它也不能很好地升级。有没有更好的方法来做到这一点?
【问题讨论】:
-
"N 个不同的词" - 你能举个例子吗?另外,单词总是有相同数量的字母吗?
-
能够说N=3,并将字符串“abc”拆分为“a”、“b”和“c”