해시 해시에서 변수에 액세스 할 때 문제가 있습니다. 내가 잘못했는지 모르겠습니다. 해시 % list1의 값을 디버깅하는 동안 undef를 제공하므로 내 값을 가져올 수 없습니다. 두 장소에서perl의 해시 해시 문제
use strict ;
use warnings ;
my $text = "The, big, fat, little, bastards";
my $Author = "Alex , Shuman ,Directory";
my %hashes = {1,2,3,40};
my %count =();
my @lst = split(",",$text);
my $i = 0 ;
my @Authors = split(",", $Author);
foreach my $SingleAuthor(@Authors)
{
foreach my $dig (@lst)
{
$count{$SingleAuthor}{$dig}++;
}
}
counter(\%count);
sub counter
{
my $ref = shift;
my @SingleAuthors = keys %$ref;
my %list1;
foreach my $SingleAuthor1(@SingleAuthors)
{
%list1 = $ref->{$SingleAuthor1};
foreach my $dig1 (keys %list1)
{
print $ref->{$SingleAuthor1}->{$dig1};
}
}
}
경우, 그것은 좋은 지적 @ysth 대신 – ysth
값을 통해 반복에 의해 훨씬 더 단순화 할 수있다. – FMc