my @ary = qw( 0 1 5 5 5 0 5 5 5 1 0 ); $" = "~"; print "@ary\n"; my $deletions = 0; for my $i ( 0 .. $#ary ) { if ($ary[$i-$deletions] == 5) { splice @ary, ($i-$deletions), 1; $deletions++; } } print "@ary\n";