in reply to Get identical elements and index from 2 Arrays in Perl

Loop over the indexes in the inner loop instead of the values and push matches to a list.

#!/usr/bin/env perl use strict; use warnings; use feature 'say'; my @A = ("Red", "Green", "Yellow"); my @B = ("Yellow", "Black","Yellow","Red", "White", "Yellow"); for my $x (@A){ my @matches; for my $y (0 .. $#B){ push @matches, $y if $B[$y] eq $x; } say $#matches < 0 ? "$x is missing" : "$x at index " . join ', ', +@matches; }
I am new in Perl

When you fancy something more advanced you can push into a hash of arrays (HoA) instead. That way you can store the results rather than just printing them out as you go. HTH.

Replies are listed 'Best First'.
Re^2: Get identical elements and index from 2 Arrays in Perl
by rebkirl (Acolyte) on May 27, 2019 at 14:24 UTC
    Thank you a lot. I learned vey basic codes and not yet seen feature 'say' and 'HoA' but it could be useful for next steps!