Автор Гілка: Perl hashes of arrays  (Прочитано 2417 раз)

Відсутній peinguin

  • Літератор
  • ******
  • дописів: 1419
  • Карма: +0/-0
Perl hashes of arrays
« : 2012-02-07 11:32:06 »
Є така конструкція
my %towns = ();

foreach my $town ($ini{towns}){
    my($key, $value) = %$town;
    my @villagies = split(', ',$value);
    $towns{$key} = \@villagies;
}

а ніяк не можна зробити $towns{$key} = split(', ',$value);

тому що зараз split(', ',$value) повертає кількість символів в масиві.

https://github.com/peinguin/Grepolis-Bot

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3820
  • Карма: +11/-0
  • Програміст
Re: Perl hashes of arrays
« Відповідей #1 : 2012-02-07 15:34:19 »
Можливо так:
   $towns{$key} = [ split(', ',$value) ];

?
[Fedora Linux]

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Perl hashes of arrays
« Відповідей #2 : 2012-02-07 16:17:44 »
або
@{$towns{$key}} = split ',', $value;

Відсутній peinguin

  • Літератор
  • ******
  • дописів: 1419
  • Карма: +0/-0
Re: Perl hashes of arrays
« Відповідей #3 : 2012-02-07 16:51:52 »
Дякую велике. Гарна мова.