次のテキストを検討してください。
com.abc.JavaClassA.doSomething(JavaClassA.java:35)
com.abc.JavaClassA.doSomething(JavaClassA.java:35)
com.abc.JavaClassA$2.doSomething(JavaClassA.java:35)
com.abc.JavaClassA$1.doSomething(JavaClassA.java:35)
次のコマンドを実行します。
:%s/\v\.[^\.]{-}\(.*\)//ge | g/\v\$[0-9]+$/de | %sort u | %!uniq
私は期待:
com.abc.JavaClassA
ただし、出力は次のようになります。
com.abc.JavaClassA
com.abc.JavaClassA$1
なぜ?com.abc.JavaClassA$1
削除する必要があると思います。g/\v\$[0-9]+$/de
答え1
~によるとvim ドキュメント、:global
(別名:g
)は、潜在的な引数の1つである|
--separatedコマンドチェーンでは使用できません。|
次の方法でこの問題を解決できます:execute
。
:execute 'command1' | 'command2' [...]