PerlでHashRefからArrayRefを作りたいのだ
PerlでHashRefのデータからArrayRefのデータに変換したいってことは、たぶん良くあります。
HashRef {"dokechin" => "soba", "yusukebe" => "ramen"}
ArrayRefのデータ ["dokechin" , "yusukebe"]
さて、どうやるのだろうか・・・
以下で出来たけど、もっと短く一発で行く方法はないかな。
$ perl -e '$hash = {dokechin => "soba", yusukebe => "ramen"}; @array = keys %$hash; $array_ref = \@array; for $entry (@$array_ref){print $entry;}'
id:tsucchi1022さんからコメントいただきました
my $aref = [keys %{ $hash }];
でどうでしょう?
id:lestrratさんからもツイートいただきました
perl -MData::Dumper -E 'my $ref = { dokechin => "soba", yusukebe => "ramen" }; say Dumper([ keys %$ref ])'
ありがとうございました。ほんとにすっきり書けるんですね。レベルアップできました!!