http://www.perlmonks.org?node_id=841307


in reply to Creating Arrays Dynamically

Hi listanand,

Here's one way you could do it with a reference to a hash of array refs:

use strict; use warnings; use Data::Dumper; my @array_names = qw (a b c d e f); my $h_arrays = { }; for my $name (@array_names) { $h_arrays->{$name} = [ $name ]; } printf "I've now got these arrays in \$h_arrays: %s\n", Dumper($h_arr +ays); __END__ Output: I've now got these arrays in $h_arrays: $VAR1 = { 'e' => [ 'e' ], 'c' => [ 'c' ], 'a' => [ 'a' ], 'b' => [ 'b' ], 'd' => [ 'd' ], 'f' => [ 'f' ] };
I'm fond of hash references, so I'd do it that way.  More simply, though, you could use a hash (instead of hash references), containing the array references:
use strict; use warnings; use Data::Dumper; my @array_names = qw (a b c d e f); my %arrays = ( ); for my $name (@array_names) { $arrays{$name} = [ $name ]; } printf "I've now got these arrays: %s\n", Dumper(\%arrays);

s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/