in reply to formatting strings
Putting a block around it isolates the change to $1 to within that block. After the block ends, $1 will regain its previous value.if ($line =~ /^\s{0,3}(\w+)(\d+)(\w+)\s+((\w+))/) { # $1-$3 used by something else here my $string = $4; { $string =~ s/(.{60})/$1\n/g; } print "$string\n"; }
But you might be better off saving the captured items to variables right away:
if (my ($word1, $number, $word2, $string) = $line =~ /^\s{0,3}(\w+)(\d+)(\w+)\s+((\w+))/) { # $word1, $number, and $word2 used by something here $string =~ s/(.{60})/$1\n/g; print "$string\n"; }
|
|---|