2012-04-04 30 views
1

我有一個包含兩種或多種類型的行的文本文件。我想將它分成兩個不同的文件。 我做到這一點與此命令列表:如何用正則表達式分割兩個文件

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

但我認爲這不是最佳的。 我怎麼能使這個更通用,更強大,更高效?

感謝

回答

1

您可以使用:v匹配的所有行不匹配搜索表達式的事實是//將重複以前的搜索相結合的事實:

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

謝謝,這個解決方案有利於我。特別是因爲它讓我發現了一個新的vim命令「:v //」。 – 2012-04-05 08:28:35