gpt4 book ai didi

r - 在交替索引上拆分字符串

转载 作者:行者123 更新时间:2023-12-01 07:23:46 29 4
gpt4 key购买 nike

我有一个类似于 "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 个不同的单词,它不会很好地升级。有一个更好的方法吗?

最佳答案

您可以使用 gsub将交替字符捕获到同一组中:

gsub("(.)(.)?", "\\1", string)
#[1] "Hello"
gsub("(.)(.)?", "\\2", string)
#[1] "Lemon"

关于r - 在交替索引上拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50044233/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com