gpt4 book ai didi

perl,比较散列,子集

转载 作者:行者123 更新时间:2023-12-01 05:15:55 27 4
gpt4 key购买 nike

我想知道是否有任何简单的算法来比较一个散列是否是另一个散列的子集。

例如,如果

$HASH{A} = B;
$HASH{B} = C;
$HASH{C} = D;

$HASH2{A} = B;
$HASH2{B} = C;

那么 %HASH2 是 %HASH 的子集。

最佳答案

这使用 "smart matching" (~~) 和 List::Util::first

use 5.010;
use List::Util qw<first>;

sub hash_is_subset {
my ( $hash, $cand ) = @_;
return not defined( first { not $hash->{ $_ } ~~ $cand->{ $_ } } keys %$cand );
}

hash_is_subset( \%HASH, \%HASH2 );

关于perl,比较散列,子集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8422118/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com