web-dev-qa-db-ja.com

Vimの特定の単語を含まないすべての行を削除するにはどうすればいいですか?

Vimでは、これでWord "price"を含むすべての行を削除できます。

:g /price/d

単語 "price"を含まないすべての行を削除するにはどうすればよいですか。

111
digitaljoel

あなたが使用することができます

:%g!/price/d

「price」を含まないすべての行を削除する

151
Yab

また使用することができます:

:v/price/d

行を削除します。

22
MOHRE
%!grep "price"

大きなファイルの場合、:vよりもかなり速くなる可能性がある別のオプションがあります。

Vim 7.4、Ubuntu 14.04、1 M行のログファイルでテスト済み。

Wordを含む行: https://stackoverflow.com/questions/1725265/how-can-i-delete-all-lines-that-do-not-begin-with-certain- characters/42714334#42714334