use strict; use Tie::File; tie @lines, 'Tie::File', $filename or die "Couldn't open $filename : $!"; for my $line (@lines) { if ($line =~ /LEU\b/) { s/ (.*)/$z3leu $z2leu $z1leu $1/ } }; #### perl -pe "/LEU\b/ and s/ (.*)/$z3leu $z2leu $z1leu $1/"