Sergei Keler (nw_wind) wrote,
Sergei Keler
nw_wind

Про кудрявого мальчика.

Кудрявый мальчик вдруг склонится над листком,
Над рифмой над нечаянной хмелея.

(c) А. Розенбаум.

Согласитесь, красивый язык Perl!
Данный стих читает файлик, табличку с любыми разделителями (\t;,). Каждую строчку кладёт в хеш, а ключи хеша берёт из первой строки самого файлика.

Ну, типа, пришло что-то такое:
name;phone;age
Pupkin;01;99
Dudkin;03;77

В цикле будет хэш %line типа:
{ name=>Pupkin, phone=>01, age=>99 }

И можно пользоваться чем-то типа $line{name} :-)

my @tpl=map {chomp; /\.(.*)$/; defined $1 ? $1 : $_; } split /[\t,;]/,<>;
while (<>) {
  my %line;
  @line{@tpl} = (map {chomp; $_} split /[\t;,]/) x @tpl;
  ...
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments