小编典典

如何检查 Perl 数组是否包含特定值?

all

我试图找出一种方法来检查数组中是否存在值,而无需遍历数组。

我正在读取参数的文件。我有一长串不想处理的参数。我将这些不需要的参数放在一个数组@badparams中。

我想读取一个新参数,如果它不存在@badparams,请处理它。如果它确实存在于 中@badparams,则转到下一个读取。


阅读 66

收藏
2022-05-12

共1个答案

小编典典

只需将数组转换为哈希:

my %params = map { $_ => 1 } @badparams;

if(exists($params{$someparam})) { ... }

您还可以向列表中添加更多(唯一)参数:

$params{$newparam} = 1;

然后得到一个(唯一的)参数列表:

@badparams = keys %params;
2022-05-12