我有一个来自哈希表中数据的字符串数组。我正在尝试删除任何(显然)空元素,但由于某种原因,似乎有一个顽固的元素拒绝离开。
我在做:
# Get list array from hash first, then
@list = grep { $_ ne ' ' } @list;
@list = uniq @list;
return sort @list;
在这grep
条线上,我收到了Use of uninitialized value in string ne...
下面正确打印数组其余部分的消息。
我已经尝试过“漫长”的方式:
foreach (@list) {
if ($_ ne ' ') {
push @new_list, $_;
}
}
但这会产生完全相同的结果。我尝试使用defined
预期结果(无)。
我可以事先对数组进行排序并删除第一个元素,但这似乎非常冒险,因为我不能保证数据集总是有空白元素。诉诸正则表达式似乎也过分了,但也许我错了。像往常一样,我确定我错过了一些简单得可笑的东西。