2014-03-27 234 views
0

我有这个Perl代码,我无法弄清楚一件事。哈希访问哈希

my %instr_enabled=(); 

foreach my $instr (@{$attrib->get_A_instructions()}) 
{ 
    %instr_enabled = (
     $instr->{instr} => { 
      enable  => $instr->{enable}, 
      group_name => $instr->{test_category}, 
     } 
    ); 
    print Dumper(\%instr_enabled); 
} 
foreach my $instr (sort keys(%instr_enabled)) 
{ 
    if($version eq "v8") 
    { 
     next unless ($instr =~ /$group_name_regex/); 
     chomp($instr); 
    } 
    else 
    { 
     print("Entering V7 test name\n"); 
     my $test_name = $instr->group_name; 
    } 
} 

如何访问组名值是hashfor的最后一条语句的散列

回答

1
$instr_enabled{$instr}{group_name}; 

这可能不是最好的参考,但你可以在这里找到更多的细节:http://www.cs.mcgill.ca/~abatko/computers/programming/perl/howto/hash/

+2

Perl附带内置文档(也有一个网页)。试试['perldoc perlreftut'](http://perldoc.perl.org/perlreftut.html)命令。这是一个Perl参考教程。有关['perldoc perlref'](http://perldoc.perl.org/perlref.html)命令中引用的更全面的参考资料。 –

+0

感谢您备份我的答案@DavidW。! – Carlisle18