VI-Reguläre Ausdrücke - Ersetzen mit der aktuellen Zeilennummer
Ich bin nicht sicher, ob es möglich ist oder nicht, aber eines der Dinge, die ich tun müssen, ist Häufig ersetzen Sie den Inhalt der Datei, aber ich möchte die aktuelle Zeilennummer als Ersatz-option. Also, wenn ich mir eine Datei wie:
This is text to replace XX
This is text to replace XX
This is text to replace XX
Ich würde wollen, um in der Lage zu laufen ein regex wäre wiederum, dass die Datei in:
This is text to replace 1
This is text to replace 2
This is text to replace 3
Habe ich schaute herum, aber ich kann nicht scheinen zu finden ein Weg, dies zu tun. Ist das möglich? Kennt jemand einen einfachen Weg, dies zu nähern?
Dank.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie konstruieren eine replace-Ausdruck wie:
... Das funktioniert für mich.
:s/XX/\=line(".")/
oder:%s/XX/\=line(".")/
zu laufen, vor jeder Zeile. Nur passen Ende der Zeilen, natürlich::%s/XX$/\=line(".")/
. Ihre Methode ist flexibler durch den Nachweis, die Verkettung von mustern in der Ersatz-tho.Dies ist viel einfacher Ansatz
Den oben genannten regulären Ausdruck in vi fügt die Zeilennummer zu jeder dummy-Wort:
Vom
Zu: