如何使用正则表达式将文件拆分为两个

时间:2012-04-04 12:51:23

标签: vim

我有一个包含两种或更多种类型的行的文本文件。我想将它分成两个不同的文件。 我用这个命令列表做到了:

:%g/myregexpforlinetype1/ . w >> file1
:%g/myregexpforlinetype1/d
:w file2

但我认为这不是最佳选择。 我怎样才能使这更通用,更强大,更有效?

由于

1 个答案:

答案 0 :(得分:1)

您可以使用:v匹配与搜索表达式不匹配的所有行以及//将重复上一次搜索的事实:

:%g/myregexpforlinetype1/ . w >> file1
:%v// . w >> file2