-1

我试图找出一种将多个键存储在哈希中而不使其分层的方法。我知道如何遍历分层哈希,但是下面的示例中是否有任何内容?

我应该my %Hash={value1, value2}{Value3}用来获得 value1 吗?这两个值需要耦合,并且有一个分层的散列,就像{value1}{value2}{value3}看起来很复杂。

到目前为止,当我这样做时,$Hash{$_ }我将两者都value1放在value2一起,但出于我的目的,我需要检查是否存在value1,value2或两者都存在,并if根据存在的一个来做一个声明。

4

1 回答 1

1

$hash{$k1}{$k2}$k1没有意义,因为您想逐个$k2独立地查找。他们彼此没有任何关系。所以,你的结构显然是

$hash{$k} = $val;

所以你的支票将是

if ($hash{$k1} && $hash{$k2}) {
   ...
}
elsif ($hash{$k1}) {
   ...
}
elsif ($hash{$k2}) {
   ...
}

(您可能必须使用exists($hash{...})defined($hash{...})取决于您的数据。)

于 2013-04-06T21:22:00.983 回答