R 以两个字符的间隔拆分字符串

R 以两个字符的间隔拆分字符串,r,string,performance,split,substring,R,String,Performance,Split,Substring,我已经编写了这样做的代码: text <- "abcdef" substring(text, first = (1:(nchar(text)/2)) * 2 - 1, last = (1:(nchar(text)/2)) * 2) 它适用于小尺寸的弦,但不适用于长弦 有什么建议,我怎样才能更快地完成吗?试试trimws(gsub(“({2})”,“\\1”,text))和 stringi::stri_sub(text,seq(1,stringi::stri_length(text),b

我已经编写了这样做的代码:

text <- "abcdef"

substring(text, first = (1:(nchar(text)/2)) * 2 - 1, last = (1:(nchar(text)/2)) * 2)
它适用于小尺寸的弦,但不适用于长弦

有什么建议,我怎样才能更快地完成吗?

试试
trimws(gsub(“({2})”,“\\1”,text))
stringi::stri_sub(text,seq(1,stringi::stri_length(text),by=2),length=2

尝试
trimws(gsub((.{2})”,“\\1”,text))

stringi::stri_sub(text,seq(1,stringi::stri_length(text),by=2),length=2

你说的“但不长”是什么意思。请举个例子@jogo我有一个文件,有一个很长的字符串。想象一下一整本书,例如为了提高效率,请看@GSee的“g2”解决方案。@zx8754最快的方法是:
sst这就是我发布链接的原因。你说“但不要太久”是什么意思。请举个例子@jogo我有一个文件,有一个很长的字符串。想象一下一整本书。例如,为了提高效率,请参阅@GSee的“g2”解决方案。@zx8754最快的方法是:
sst这就是我发布链接的原因。请添加您的答案,以便我可以声明您的答案为已接受的答案?否则,如果人们来到这里,看到这是一个副本,他们可能看不到你说的话,因为它在窗口的底部。请添加你的答案,以便我可以宣布你的答案是接受的?否则,如果人们来到这里,看到这是一个复制品,他们可能不会看你说的话,因为它在窗口底部
"ab" "cd" "ef"