1
在大多数脚本语言中,很容易将字符串拆分为不带定界符的固定长度的子字符串。例如在红宝石我可以做将字符串拆分为基于固定长度的子字符串vim
'acgatgctgc'.scan(/.{3}/).join(' ') #=>"acg atg ctg"
什么是使用vim脚本这样做?或者在vim中使用单个命令实现相同的功能?
编辑 注:请注意红宝石条最C
在大多数脚本语言中,很容易将字符串拆分为不带定界符的固定长度的子字符串。例如在红宝石我可以做将字符串拆分为基于固定长度的子字符串vim
'acgatgctgc'.scan(/.{3}/).join(' ') #=>"acg atg ctg"
什么是使用vim脚本这样做?或者在vim中使用单个命令实现相同的功能?
编辑 注:请注意红宝石条最C
join(split('acgatgctgc','.\{3}\zs'),' ')
上述行会给你
"acg atg ctg c"
我知道有一个c
,它可以通过filter()
功能被去除,如果你想删除它:
join(filter(split('acgatgctgc','.\{3}\zs'),'len(v:val)==3'),' ')
will给你:
"acg atg ctg"
我不知道它是否回答你的问题。
看起来不错实际上,我宁愿不删除它! – eastafri
这里是相关的':substitute'命令,如果你需要的话:':%s/\ v。{3}($)@!/&/ g' –
@eastafri但是你的问题中的例子的结果是* * no **'c' ... – Kent