Salut,
voici un exemple, pour mieux comprendre
lami20j@debian:~/trash$ cat tableau.pl
#!/usr/bin/perl
#
my @vide = ("a","b","","d");
print "taille = ", scalar @vide,"\n";
my @non_vide1 = grep { /.+/ } @vide; # 1
my @non_vide2 = grep { $_ ne "" } @vide; # 2
for(@vide){push @non_vide3,$_ unless $_ eq "";} #3
print "taille = ", scalar @non_vide1,"\n";
print "taille = ", scalar @non_vide2,"\n";
print "taille = ", scalar @non_vide3,"\n";
print "-" x 20,"\n";
@vide=();
print "taille = ", scalar @vide,"\n";
print "taille = ", scalar @non_vide1,"\n";
print "taille = ", scalar @non_vide2,"\n";
print "taille = ", scalar @non_vide3,"\n";
__END__
lami20j@debian:~/trash$ perl tableau.pl
taille = 4
taille = 3
taille = 3
taille = 3
--------------------
taille = 0
taille = 3
taille = 3
taille = 3
106485010510997108