Aside from what moritz said, do you really need to have $part1 and $part2? Since you are parsing an array you'll have to go through the process of running all its values. There are quite a few ways to do that. You can
use the for loop to build the final string to be printed, and print it outside the block
@l=<F3>; my $text = ''; for my $line (@l){ chomp $line; my ($part1, $part2) = split /\*/,$line; $text .= "$part1 $part2\n"; } print $text;
create the single string right from the array values by joining them
@l=<F3>; my $text = join '', @l; $text =~ s/\*/ /g; print $text;
use a different kind of block
@l=<F3>; print map {s/\*/ /;$_;} @l;
In reply to Re^3: Printing a Variable outside of the block
by olus
in thread Printing a Variable outside of the block
by trenchwar
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |