
Ich habe Code ähnlich diesem:
<%= article.body %></td>
<%= article.author %></td>
<%= link_to 'Show', article %></td>
<%= link_to 'Edit', edit_article_path(article) %></td>
<%= link_to 'Destroy', article, :confirm => 'Are you sure?', :method => :delete %></td>
Ich möchte die HTML-Tags am Ende der Zeilen in Vim löschen. Die einzige Möglichkeit, die mir einfiel, war Suchen und Ersetzen. Ich weiß, dass ich Text in mehrere Zeilen einfügen und anhängen kann, aber gibt es eine Möglichkeit, Text aus mehreren Zeilen zu löschen?
Antwort1
Suchen und ersetzen Sie nach „<“ eine Zeichenfolge mit Ausnahme des Zeichens „<“ (^), bis Sie zu einem „>“ gelangen, das sich ebenfalls am Ende der Zeile befindet:
%s/<[^<]+>$//g
Korrektur:
%s/<[^<]\+>$//g
Antwort2
Das ist eine gültige Methode.
Aushttp://vim.wikia.com/wiki/Power_of_g
:[range]g/<pattern>/cmd
Ein Ex-Befehl beginnt mit einem Doppelpunkt (':'). Der Befehl arbeitet mit dem angegebenen Bereich (Standard: gesamte Datei), indem er für jede übereinstimmende Zeile den Ex-Befehl cmd ausführt. Vor der Ausführung von cmd wird "." auf die aktuelle Zeile gesetzt.
Dies scheint eine ebenso einfache Möglichkeit zu sein, einen Befehl für eine Gruppe von Dateien auszuführen.