+sub split_email_list {
+ my(@list) = @_;
+ my @tmp;
+ my @emails;
+ for (my $i = 0; $i <= $#list; $i++) {
+ if ($list[$i] =~ /,/) {
+ @emails = split(/,/, $list[$i]);
+ } else {
+ @emails = $list[$i];
+ }
+ # Removal of unwanted spaces
+ for (my $j = 0; $j <= $#emails; $j++) {
+ $emails[$j] =~ s/^\s+//;
+ $emails[$j] =~ s/\s+$//;
+ }
+ @tmp = (@tmp, @emails);
+ }
+ return(@tmp);
+}
Why two regex ? You could do something like :
$emails[$j] =~ s/^\s+|\s+$//g;
to remove leading and trailing whitespaces at the same time.
I think it's better to use the builin 'push' function to concatenate
your two arrays:
push(@tmp, @emails);
Benoit Person