-2
如何比较2个哈希子键是否与eachother匹配?如何比较哈希子键
%hash={'Key1' => {
'Sub_key1' => [ 'value' ]
}
'key2' => {
'Sub_key2' => [ 'value' ]
}
}
如何比较2个哈希子键是否与eachother匹配?如何比较哈希子键
%hash={'Key1' => {
'Sub_key1' => [ 'value' ]
}
'key2' => {
'Sub_key2' => [ 'value' ]
}
}
首先,你定义的散列没有正确的语法。它应该是这样的:
%hash =('Key1' => {
'Sub_key1' => [ 'value' ]
},
'key2' => {
'Sub_key2' => [ 'value' ]
}
);
因为你不使用散列引用(如$哈希= {....})。 现在,通过子项来迭代你要做的:
@array =();
foreach $key (keys %hash){
foreach $subkey (keys %{$hash{$key}}) {
push(@array, $subkey);
}
}
我用数组,因为你可能要两个以上的值存储在里面,然后比较them.Anyway,那么你可以做:
if ($array[0] eq $array[1]){
print "Match";
}
由于散列中只有两个子键。如果还有更多,你应该遍历这个数组。
匹配如何?字符串,数字,区分大小写? – TLP
此外,您应该更努力地改进缩进,以便您的代码更具可读性。不只是出于对帮助你的人的尊重,而是出于你自己的利益。 – TLP
Stringwise,我试过的样子看起来真的很愚蠢,我不知道它会有帮助 – PYPL