c:\@Work\Perl>perl -wMstrict -MData::Dump -le "my @lines = ('', ' ', ' ', 'x', ' x', 'x ', ' x ', ' x ',); ;; my @no_empties = grep { $_ !~ /^(?:\s+|)$/ } @lines; ;; dd \@no_empties; " ["x", " x", "x ", " x ", " x "] #### c:\@Work\Perl>perl -wMstrict -MData::Dump -le "my @lines = ('', ' ', ' ', 'x', ' x', 'x ', ' x ', ' x ',); ;; my @no_empties = grep m{\S}xms, @lines; ;; dd \@no_empties; " ["x", " x", "x ", " x ", " x "]