Alle Zeilen auf einmal bearbeiten

Alle Zeilen auf einmal bearbeiten

Ich habe eine TXT-Datei mit fast allen Flughäfen der Welt. Jede Zeile steht für einen anderen Flughafen und die Zeilen haben dieses Format:Stadt, Land - Flughafenname (Flughafencode)

dh:

Le Mans, France - Arnage (LME)
Detroit, USA - Willow Run (YIP)
San Francisco, USA - San Francisco International (SFO)

(die komplette .txt ist hier:http://snipt.org/AnT8)

Aber ich möchte dieses Format:"Stadt, Land - Flughafenname (Flughafencode)" => "Flughafencode"

(ja, mit Anführungszeichen, es ist für die PHP-Codierung)

dh:

"Le Mans, France - Arnage (LME)" => "LME"
"Detroit, USA - Willow Run (YIP)" => "YIP"
"San Francisco, USA - San Francisco International (SFO)" => "SFO"

Wie kann ich das sofort tun?

Antwort1

Diese funktionieren sofort unter Linux, OSX usw.:

  1. Perl

    perl -ne 'chomp; /\((.+?)\)/; print "\"$_\" => \"$1\"\n"' list.txt
    

    mehr Perl, dieses verwendet Magie:

    perl -ane 'print "\"@F\" => \"$F[$#F]\"\n"' a
    
  2. puh/gauh

    awk -F '[()]' '{print "\""$0"\" =>\""$2"\""}' list.txt
    
  3. @evilsoup's sed

    sed  -e 's/(\(...\))/(\1)" => "\1"/' -e 's/^/"/' list.txt
    

Keines davon ändert die Originaldatei, verwendet sie -ifür Perl und sedOptionen oder leitet die Ausgabe um, wenn Sie speichern möchten:

command list.txt > new_list.txt

Antwort2

Sie können auch einen grafischen Texteditor mit mehrzeiligen Bearbeitungsfunktionen verwenden, wie zum BeispielErhabener Text.

  • Wählen Sie alles mit aus CmdAund aktivieren Sie dann den Zeilenbearbeitungsmodus mit ShiftCmdL.
  • Gehen Sie mit an das Ende der Zeile Cmdund kopieren Sie den Flughafencode in den Klammern. Setzen Sie die Zeile anschließend in Anführungszeichen, fügen Sie das hinzu =>und fügen Sie den Code erneut ein.
  • Drücken Sie Esc, um den Zeilenbearbeitungsmodus zu verlassen.

Grundsätzlich können Sie also dasselbe tun, was Sie mit einer Zeile tun würden.

Antwort3

Emacs bietet die Möglichkeit, mehrere Cursor zu verwenden. Auf diese Weise können Sie alle Zeilen gleichzeitig direkt bearbeiten. Das Video zur Einrichtung finden Sie auf der Emacs Rocks-Website.http://emacsrocks.com/e13.html.

Antwort4

Sie können es kopieren und in eine Tabelle einfügen ... und dann die Zeilen mit Trennzeichen in Spalten aufteilen ... wenn die Spalten wie folgt erstellt wurden:„Stadt, Land – Flughafenname (Flughafencode)“... fügen Sie einfach eine weitere Spalte mit wiederholter Zeichenfolge hinzu:=>und kopieren Sie die "Flughafencode" Spalte dazu als nächstes..

Damit könnte es dann etwa so aussehen:

"Stadt, Land - Flughafenname (Flughafencode)" => "Flughafencode"

Kopieren Sie einfach den gesamten Tabelleninhalt und fügen Sie ihn in den Editor oder einen beliebigen anderen Texteditor für Mac ein. Ersetzen Sie in diesem Editor die TAB-TASTE je nach den Anforderungen Ihres Codes durch ein LEERTASTE oder NICHTS.

Sie benötigen lediglich eine Tabellenkalkulationssoftware wie MS Excel und einen Texteditor wie Notepad. Ich bin ein Windows-Benutzer und kenne mich daher mit Software für Mac nicht aus …

verwandte Informationen