Analysieren von Textdateien mit Perl

Das Parsen von Textdateien ist einer der Gründe, warum Perl ein großartiges Data Mining- und Scripting-Tool ist.

Wie Sie unten sehen werden, kann Perl verwendet werden, um eine Textgruppe grundsätzlich neu zu formatieren. Wenn Sie auf den ersten Textabschnitt und dann auf den letzten Teil unten auf der Seite schauen, können Sie sehen, dass der Code in der Mitte den ersten Satz in den zweiten verwandelt.

So analysieren Sie Textdateien

Lassen Sie uns als Beispiel ein kleines Programm erstellen, das eine durch Tabulatoren getrennte Datendatei öffnet und die Spalten in etwas analysiert, das wir verwenden können.

Angenommen, Ihr Chef gibt Ihnen eine Datei mit einer Liste mit Namen, E-Mails und Telefonnummern und möchte, dass Sie diese lesen die Datei und machen Sie etwas mit den Informationen, wie sie in eine Datenbank stellen oder sie einfach in einem schön formatierten Format ausdrucken Bericht.

Die Spalten der Datei werden durch das TAB-Zeichen getrennt und sehen ungefähr so ​​aus:

 Larry [email protected] 111-1111

 Curly [email protected] 222-2222

 Moe [email protected] 333-3333 

instagram viewer

Hier ist die vollständige Liste, mit der wir arbeiten werden:

 #! / usr / bin / perl


 open (FILE, 'data.txt');

 während () {

 chomp;

 ($ name, $ email, $ phone) = split ("\ t");

 print "Name: $ name \ n";

 print "Email: $ email \ n";

 print "Telefon: $ phone \ n";

 print "\ n";

 }

 Datei schließen);

 Ausfahrt;


Hinweis: Dadurch wird Code aus dem Lernprogramm abgerufen wie man Dateien in Perl liest und schreibt.

Was es zuerst tut, ist offen a Datei genannt data.txt (das sollte sich im selben Verzeichnis wie das Perl-Skript befinden). Anschließend wird die Datei zeilenweise in die catchall-Variable $ _ eingelesen. In diesem Fall ist das $ _ impliziert und nicht wirklich im Code verwendet.

Nach dem Einlesen einer Zeile ist jedes Leerzeichen gekaut am Ende davon. Dann wird die Teilungsfunktion verwendet, um die Linie auf dem Tabulatorzeichen zu unterbrechen. In diesem Fall wird die Registerkarte durch den Code dargestellt \ t. Links neben dem Split-Zeichen sehen Sie, dass ich eine Gruppe von drei verschiedenen Variablen zuweise. Diese repräsentieren eine für jede Spalte der Zeile.

Schließlich wird jede Variable, die von der Zeile der Datei getrennt wurde, separat gedruckt, damit Sie sehen können, wie Sie auf die Daten jeder Spalte einzeln zugreifen können.

Die Ausgabe des Skripts sollte ungefähr so ​​aussehen:

 Name: Larry

 E-Mail: [email protected]

 Telefon: 111-1111


 Name: Curly

 E-Mail: [email protected]

 Telefon: 222-2222


 Name: Moe

 E-Mail: [email protected]

 Telefon: 333-3333


Obwohl wir in diesem Beispiel nur die Daten ausdrucken, ist es trivial einfach, dieselben Informationen, die aus einer TSV- oder CSV-Datei analysiert wurden, in einer vollwertigen Datenbank zu speichern.