2

VI(M) で、行末から文字までのすべてのテキストを削除できるクイック コマンドを探しています。私は逆を行うことができます:

:%s/.*"

しかし、私はその反対を望んでいます。私は試した:

:%s/$.*" 

しかし、それは機能しませんでした (私のロジックは $ でした。行末から開始し、" までのすべてを見つけて削除します。

これは、私が操作しようとしているテキストのサンプルです (編集: ただし、この行は複数回発生します - 解決策は同様の構造の多くの行で機能する必要があります - 単一行の解決策では不十分です - 最初に明確でないことをお詫びします):

APPPOOL "default app pool" (some long list of stuff, more entries here)

になる

APPPOOL "default app pool"
4

2 に答える 2

11

単純に入力しないのはなぜ$dT"ですか?

本当に :s でやりたい場合は、試してみてください

:s/"[^"]*$/"/
于 2013-01-28T17:07:11.790 に答える
2

二つの思い。初め:

:s/\(.*"\).*/\1/

または、行の最後に移動して、次のようにします。

dT"x

バッファ全体を操作するには:

:%normal $dT"x
于 2013-01-28T17:03:46.197 に答える