Analýza textových súborov pomocou jazyka Perl

Analýza textových súborov je jedným z dôvodov, prečo Perl vytvára skvelý nástroj na získavanie a skriptovanie údajov.

Ako uvidíte nižšie, Perl sa dá použiť na preformátovanie skupiny textu. Ak sa pozriete dole na prvý kúsok textu a potom na poslednú časť v dolnej časti stránky, môžete vidieť, že kód v strede je to, čo transformuje prvú množinu na druhú.

Ako analyzovať textové súbory

Napríklad vytvorme malý program, ktorý otvorí dátový súbor oddelený od karty a analyzuje stĺpce na niečo, čo môžeme použiť.

Povedzme napríklad, že váš šéf vám odovzdá súbor so zoznamom mien, e-mailov a telefónnych čísel a chce, aby ste si ho prečítali súbor a urobte niečo s informáciami, napríklad ich vložte do databázy alebo ich vytlačte v peknom formáte správa.

Stĺpce súboru sú oddelené znakom TAB a budú vyzerať asi takto:

 Larry [email protected] 111-1111

 Curly [email protected] 222-2222

 Moe [email protected] 333-3333 

Toto je úplný zoznam, s ktorým budeme pracovať:

 #! / Usr / bin / perl


 otvorené (FILE, 'data.txt');
instagram viewer

 zatiaľ () {

 žuť;

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

 print "Meno: $ meno \ n";

 print "Email: $ email \ n";

 print "Phone: $ phone \ n";

 print "\ n";

 }

 zavrieť (FILE);

 východ;


Poznámka: Týmto sa z príručky načíta nejaký kód ako čítať a zapisovať súbory do Perlu.

Čo robí ako prvé, je otvorené súbor nazvaný data.txt (ktorý by mal byť umiestnený v rovnakom adresári ako skript Perl). Potom načíta súbor do riadkovej premennej $ _ riadok po riadku. V tomto prípade je $ _ implikovaná a v skutočnosti sa v kóde nepoužili.

Po prečítaní v riadku je medzera prázdna chomped z jeho konca. Potom sa funkcia rozdelenia použije na prerušenie riadka na znaku karty. V tomto prípade je karta reprezentovaná kódom \ t. Naľavo od znamienka rozdelenia uvidíte, že priradím skupinu troch rôznych premenných. Predstavujú jeden pre každý stĺpec riadku.

Nakoniec je každá premenná, ktorá bola rozdelená od riadku súboru, vytlačená osobitne, aby ste videli, ako pristupovať k údajom každého stĺpca jednotlivo.

Výstup skriptu by mal vyzerať asi takto:

 Meno: Larry

 E-mail: [email protected]

 Telefón: 111-1111


 Názov: Curly

 E-mail: [email protected]

 Telefón: 222-2222


 Názov: Moe

 E-mail: [email protected]

 Telefón: 333-3333


Aj keď v tomto príklade práve tlačíme údaje, bolo by triviálne ľahké uložiť tie isté informácie analyzované zo súboru TSV alebo CSV do plnohodnotnej databázy.

instagram story viewer