1

在大多数脚本语言中,很容易将字符串拆分为固定长度的子字符串,而无需使用分隔符。例如在红宝石中我可以做到

'acgatgctgc'.scan(/.{3}/).join(' ') #=>"acg atg ctg"

使用 vim 脚本执行此操作的等价物是什么?或在 vim 中使用单个命令实现相同的功能?

编辑注意:注意 Ruby 去掉了最后一个 c

4

1 回答 1

3
join(split('acgatgctgc','.\{3}\zs'),' ')

上面的行会给你

"acg atg ctg c"

我知道有一个,如果你想删除它c,它可以被函数删除:filter()

join(filter(split('acgatgctgc','.\{3}\zs'),'len(v:val)==3'),' ')

会给你:

"acg atg ctg"

不知道能不能回答你的问题。

于 2013-04-17T20:09:02.030 回答