my $x; my $counter; for($x = 0; $x < @{$mon_obj->{'FILE_DATA'}}; $x++) { unless($mon_obj->{'FILE_DATA'}->[$x]) ## if undef incr. the gap { $counter++; } if($counter > 0) ## copy the data from $x + gap to $x { $mon_obj->{'FILE_DATA'}->[$x] = $mon_obj->{'FILE_DATA'}->[$x + $counter]; } } for($x = 0; $x < $counter; $x++) { pop @{$mon_obj->{'FILE_DATA'}; ## pop into oblivion }