Разгледавање текстуалних датотека помоћу Перл

Разгледавање текстуалних датотека један је од разлога што је Перл одличан алат за вађење и скриптирање података.

Као што ћете видети у наставку, Перл се може користити за преобликовање групе текста. Ако погледате доле први део текста, а затим последњи део при дну странице, можете видети да је код у средини оно што први скуп претвара у други.

Како рашчланити текстуалне датотеке

Као пример, направимо мали програм који отвара датотеку података раздвојену картицама и анализира ступце у нешто што можемо да користимо.

Реците, као пример, да вам шеф преда датотеку са списком имена, имејлова и бројева телефона и жели да прочитате датотеку и урадите нешто с информацијама, попут стављања у базу података или само исписа у лијепо форматираном облику извештај.

Ступци датотеке су одвојени са ТАБ карактером и изгледали би овако:

 Ларри ларри@екампле.цом 111-1111

 Цурли цурли@екампле.цом 222-2222

 Мое мое@екампле.цом 333-3333 

Ево потпуног списка са којим ћемо радити:

 #! / уср / бин / перл


 отвори (ФИЛЕ, 'дата.ткт');
instagram viewer

 док () {

 цхомп;

 ($ наме, $ емаил, $ пхоне) = сплит ("\ т");

 исписати "Име: $ наме \ н";

 исписати "Емаил: $ емаил \ н";

 штампати "Телефон: $ телефон \ н";

 испис "\ н";

 }

 затвори (ФИЛЕ);

 излаз;


Белешка: Ово повлачи неки код из уџбеника како читати и писати датотеке на Перлу.

Оно што прво уради је отворено а датотека који се зове дата.ткт (који би требало да се налази у истој директорији као и скрипта Перл). Затим чита датотеку у цатцхалл променљиву $ _ линију по ред. У овом случају је $ _ подразумевало а заправо се не користи у коду.

Након читања у ретку, било који бели простор је цхомпед с краја. Затим се сплит функција користи да се прекине линија на знаку картице. У овом случају картица је представљена кодом \ т. Лево од знака расцепа видећете да доделим групу од три различите променљиве. Оне представљају по један за сваки ступац линије.

Коначно, свака варијабла која је одцепљена од линије датотеке штампа се одвојено, тако да можете видети како појединачно приступити подацима сваког ступца.

Излаз скрипте требао би изгледати овако:

 Име: Ларри

 Емаил: ларри@екампле.цом

 Телефон: 111-1111


 Име: Цурли

 Емаил: цурли@екампле.цом

 Телефон: 222-2222


 Име: Мое

 Емаил: мое@екампле.цом

 Телефон: 333-3333


Иако у овом примјеру само исписујемо податке, било би тривијално једноставно похранити исте податке, рашчлањене из ТСВ или ЦСВ датотеке, у пуноправну базу података.

instagram story viewer