我想从数组引用的哈希中删除一个键:
如果我要删除的“密钥”是“测试”,我尝试了类似
的内容$Test = 'Test';
foreach my $k (keys %{$line}) {
@{$line->{$k}} = grep @{$line->{'$Test'}} != 0, @{$line->{$k}};
}
但我无法删除它!有人能告诉我如何删除它吗?
答案 0 :(得分:1)
perl delete
操作执行此操作。请参阅perlfunc
手册:
删除 EXPR
给定一个指定哈希元素,数组元素,哈希切片或数组切片的表达式,从哈希或数组中删除指定的元素。在数组的情况下,如果数组元素恰好在末尾,则数组的大小将缩小到对于exists()测试为true的最高元素(如果不存在这样的元素,则为0)。
这里讨论: