Vim:4个随机数序列末尾的分割线

时间:2013-10-09 17:05:43

标签: regex vim full-text-search

我有一个文本文件,全部包含在一行中。

e.g。

Scheme 4078 6291 4205 66 Video 23522 4323 53522 4233 Social 23 5432 6 54

我想将其拆分为将名称及其四个关联数字保存在一行的行。

因此:

Scheme 4078 6291 4205 66

Video 23522 4323 53522 4233 

Social 23 5432 6 54

我一直在尝试像

这样的事情
/[[:digit:]]+ [[:digit:]]+ [[:digit:]]+ [[:digit:]]+ 

而且我认为它必须涉及:%s,但我迷路了。 有什么帮助吗?

4 个答案:

答案 0 :(得分:1)

一种方式。它不会查看四位数字组,而是查看没有数字的任何单词,并在其前面插入换行符。

:%s/\v\s+(\D+)/\r\1/g

它产生:

Scheme 4078 6291 4205 66
Video 23522 4323 53522 4233
Social 23 5432 6 54

答案 1 :(得分:1)

这种替换应该有效。

:%s/\s\+\(\D\)/\r\1/g

答案 2 :(得分:1)

这个使用您使用的类似语法

:%s/\(\(\<[[:digit:]]\+\>[ \t]\+\)\{4\}\)/\1\r/g

答案 3 :(得分:0)

如果这些是唯一关键字,那么这将起作用

:%s/\(Scheme\|Video\|Social\)/\r\1/g