Как сохранить значения из столбца (в текстовом файле с разделителями табуляции) в Perl - PullRequest
0 голосов
/ 09 декабря 2010

Вот пример файла. Допустим, я хочу проанализировать значения 6-го столбца и сохранить их в массиве.

42  test.example.com    activityViewer/index.html   8a699fe62751d158dad57f6b9a3ae5a4    1291836592  4.1938788890839
4   test.example.com    activityViewer/index.html   ca0317343500ac35d46ca6b6bfe5918d    1291836592  4.224240064621
38  test.example.com    activityViewer/index.html   2a473f02e814896af9d20ad333dfd5c5    1291836592  4.2302849292755
9   test.example.com    activityViewer/index.html   ac3942ad87fb0ce3efb034cdfc3d4c79    1291836592  4.2612450122833
31  test.example.com    activityViewer/index.html   3497d90401e18483119b60a378bd8d27    1291836592  4.3139219284058
25  test.example.com    activityViewer/index.html   377b12a86f6bbde33dc89e94cacd5246    1291836592  27.90621805191
3   test.example.com    activityViewer/index.html   493bf2ba361b77d09305a14e9253322d    1291836592  29.722389936447

Ответы [ 3 ]

5 голосов
/ 09 декабря 2010

Вы можете сделать:

use strict;

my @arr;    
while(<>) {
        my @tmp = split/\t/;
        push @arr,$tmp[5];
}

и вызвать скрипт как:

$ perl myprg.pl  file

Посмотреть

В качестве альтернативы вы можете рассматривать файл как CSV с вкладкой в ​​качестве разделителя полей и использовать подходящий модуль синтаксического анализа CSV.

0 голосов
/ 09 декабря 2010

Сплит будет самый простой способ

my @ary;
foreach my $line (split(/\n/, $full_text)) {
  my @l = split(/\t/, $line);
  push @ary, $l[5]
}
0 голосов
/ 09 декабря 2010
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...