for my $need (grep { /^sanj/ } @need) { $array1[$incr1++] = $need; } #although maybe in that case you would just do the more readable for my $need (@need) { if($need =~ /^sanj/) { $array1[$incr1++] = $need; } }