@ary = qw( 0 1 5 5 5 0 5 5 5 1 0 ); $" = "~"; print "@ary\n"; for my $i ( 0 .. $#ary ) { # undefine bad element undef $ary[$i] if $ary[$i] == 5; } # now remove undefined elements @ary = grep{ defined }@ary; print "@ary\n";