perl在字符串eq中使用未初始化的值$ _

时间:2017-02-09 09:22:39

标签: arrays perl initialization equals dereference

为什么我有时会出现这个错误?     在字符串eq中使用未初始化的值$ _

if (defined($infos->{"valeur_exclude"}) &&
grep { $number eq $_ } @{$infos->{"valeur_exclude"}});

由于

2 个答案:

答案 0 :(得分:5)

数组在某处包含undef。在比较之前检查defined

grep { defined && $number eq $_ }

答案 1 :(得分:-4)

也许,regexp而不是EQ?

我的@foo = grep {!/ ^#/} @ bar;

http://perldoc.perl.org/functions/grep.html