my $s = 'Hello [2][1]';
my @a = ('x','y','z');
my $array_name = 'a';
{
no strict 'refs';
$s =~ s/\[(\d{1,2})\]/$array_name->[$1]/g;
}
print $s;
####
my $s = 'Hello [2][1]';
my @a = ('x','y','z');
my $array_name = 'a';
my $array_ref = do { no strict 'refs'; \@$array_name };
$s =~ s/\[(\d{1,2})\]/$array_ref->[$1]/g;
print $s;
##
##
my $s = 'Hello [2][1]';
my @a = ('x','y','z');
my $array_ref = \@a;
$s =~ s/\[(\d{1,2})\]/$array_ref->[$1]/g;
print $s;
##
##
my $s = 'Hello [2][1]';
my @a = ('x','y','z');
$s =~ s/\[(\d{1,2})\]/$a[$1]/g;
print $s;