my @array = grep $_->[0] !~ /someRE/, map { [ $array1[$_], $array2[$_] ] } 0 .. $#array1; @array1 = map { $_->[0] } @array; @array2 = map { $_->[1] } @array;