use Data::Dumper; my @arr1 = qw(2 4 5); my @arr2 = ('1,nfs', '2,afp', '3,cifs', '4,dns', '5,backup'); my @arr3 = map { (split /,/)[-1] } grep { /^[@arr1],/x } @arr2; print Dumper(\@arr3); __output__ $VAR1 = [ 'afp', 'dns', 'backup' ];