Ich weiß, dass das funktioniert:
:%s/<string>//gn
Aber es scheint ein bisschen seltsam, den Substitutionsbefehl zum Zählen zu verwenden, anstatt global.
Ich habe zuvor ein Plugin dafür verwendet. vim-indexed-search gibt Ihnen eine Nachricht in der Befehlszeile wie:
2 of 32 matches
Für Suchen mit /
Es scheint, dass es keinen anderen Weg gibt. Dies ist in der Tat der offizielle Weg, der in der Vim-Dokumentation beschrieben wird.
Siehe diese SO-Frage mit dem Titel: Vorkommen in Vim zählen, ohne den geänderten Puffer zu markieren, und diesen Absatz aus der Vim-Dokumentation .
Alternativ gibt es auch diese SO-Frage mit dem Titel: Suchen Sie nach Zeichenfolgen und erhalten Sie die Anzahl im vi-Editor . Beachten Sie jedoch, dass diese Methode nur Zeilen zählt, nicht tatsächliche Übereinstimmungen. Wenn Sie also mehrere Übereinstimmungen pro Zeile haben, erhalten Sie keine korrekte Anzahl.