Frage Wie gehe ich effizient von `/ foo` nach`:% s / foo / bar`


Im vim, Ich tippte /foo  Eingeben und fand einige Übereinstimmungen.

Jetzt möchte ich alle Instanzen ersetzen foo mit bar (d.h. :%s/foo/bar).

Kann dies getan werden, ohne die foo? (z.B. in die folgende Befehlszeile) :)


4
2018-05-31 10:07


Ursprung




Antworten:


Ja, du kannst es mit machen :%s//bar.

Erklärung: Im Ersatzbefehl, wenn das Suchmuster leer ist, verwendet Vim das letzte Suchmuster.

Alternativ können Sie das letzte Suchmuster, das in einem speziellen Register gespeichert ist, explizit einfügen. Sie können den Inhalt schnell eingeben, indem Sie eingeben Strg-R+/ im Einfüge- oder Befehlsmodus.

Geben Sie den Befehlsmodus ein, geben Sie ein %s/, dann Strg-R+/ um das letzte Muster und dann die restlichen einzufügen /bar.


12
2018-05-31 11:07