my code: do { if( my$index_gl=grep{$hfr_genes[$_]=~/^$gl[$index]$/}0..$#hfr_genes) { print TEST "Val $gl[$index] is present $index_gl times\n"; $index++; } else { $index++; } } until ($index==(scalar(@hfr_genes)));