在 perl 5.10.1 中,是否可以在使用each
运算符迭代哈希时将新成员添加到哈希中?
嗯。就像在这段代码中(为谷歌图表准备数据)一样,我有一个数组的哈希值,我试图移动每个数组的最后一个元素:
sub split_aclr($) {
my $csvData = shift;
while (my ($csv, $href) = each %$csvData) {
next unless $csv =~ /_ACLR_/i;
my $len = scalar @{$href->{MEASUREMENT}};
if ($len > 1 && $href->{MEASUREMENT}->[$len - 1] eq 'CARRIER_CHANNEL') {
while (my ($key, $arr) = each %$href) {
my $moved = pop @$arr;
$csvData{$csv . '_CARRIER_CHANNEL'} = {$key => [ $moved ]};
}
}
}
}