Perl:两个数组索引值之间的差异

时间:2015-12-23 06:20:50

标签: arrays perl

我有两个数组输入:

@a = (1, 2, 3, 4, 5);
@b = (2, 2, 3, 6, 8);

输出:

在第一个数组中打印1,4,5个差异 在第二阵列中打印2,6,8差异。

我尝试了这个,但我不会使用哪个模块。

use Array::Utils qw(:all);

@a = (1, 2, 3, 4, 5);
@a = (2, 2, 3, 6, 8);

# get items from array @a that are not in array @b
my @minus = array_minus( @a, @b );
print @minus;exit;

我想打印索引值之间的差异。

1 个答案:

答案 0 :(得分:3)

my @diff_indexes = grep { $a[$_] != $b[$_] } 0..$#a;

my @a_diff_values = @a[ @diff_indexes ];
my @b_diff_values = @b[ @diff_indexes ];

参考:greparray slice