Perl查找哈希值

问题描述 投票:1回答:2

Perl中是否有任何方法可以检查散列中是否存在值,无论它们是否为键?我在网上阅读并了解如何检查密钥,但不检查值。

例如,我想知道字符串“ apple”是否作为哈希中ANY键的值存在。这是用于单级哈希,而不是嵌套的。

perl hash
2个回答
1
投票

您是说values吗?

您可以通过对哈希值进行迭代来找到哈希中的特定值。

for(values %your_hash){
    ...
    if ($_ eq your_value){
        do something
    }
}

1
投票

只是一个简单的技巧;-)

# string to search for
$value = "hugo"
%myHash = .....

@hashValues = values %myHash;

my %hash = map { $_ => 1 } @hashValues;
if(exists($hash{$value})) { ........ }
© www.soinside.com 2019 - 2024. All rights reserved.