我有两个数组输入:
@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;
我想打印索引值之间的差异。
答案 0 :(得分:3)
my @diff_indexes = grep { $a[$_] != $b[$_] } 0..$#a;
my @a_diff_values = @a[ @diff_indexes ];
my @b_diff_values = @b[ @diff_indexes ];
参考:grep
,array slice