while ( my $line = <$in_fh> ) { if (my ($abc) = $line =~ m{ \A (.*dgrs) }xms) { print $temp_out "$abc . _$_;\n" for 1..3; } else { print $temp_out $line; } }