【发布时间】:2018-10-13 03:51:20
【问题描述】:
下面的脚本将打印每个键的每个元素的所有标量值,如何仅打印散列中每个元素的第一个标量值。
#!/usr/bin/perl
use warnings;
use strict;
use Tie::IxHash;
my %KEY_VALUE;
tie %KEY_VALUE,'Tie::IxHash';
my %KEY_VALUE= (
0 => ['A','A','C','B','D'],
1 => ['C','C','C','F','E','E'],
2 => ['Z','X','X','A','A','Y','Y'],
3 => ['A','A','B','B'],
4 => ['E','E','R','M','M'],
5 => ['D','F','F','F','E','E'],
);
while (my ($k, $v) = each %KEY_VALUE)
{
print "KEY= $k ";
print scalar "VALUE= @$v\n"; #But this will print all the value
}
想要的输出:
KEY= 0 VALUE:0 2 3 4 #The scalar value of first A C B D, start with 0
KEY= 1 VALUE:0 3 4 #The scalar value of first C F E
KEY= 2 VALUE:0 1 3 5 #The scalar value of first Z X A Y
KEY= 3 VALUE:0 2 #The scalar value of first A B
KEY= 4 VALUE:0 2 3 #The scalar value of first E R M
KEY= 5 VALUE:0 1 4 #The scalar value of first D F E
【问题讨论】:
-
您已经表现出提供过多信息的模式。请发布问题的最小演示。您想对多个数组执行操作以及这些数组由哈希引用的事实是无关紧要的。