use strict; use warnings; { my $template = <<'EOF'; string tymchasovyi(%PROMPT%); int %VARIABLE% = read(tymchasovyi); EOF sub populate_template { my($v,$p) = @_; my $t = $template; $t =~ s/%VARIABLE%/$v/g; $t =~ s/%PROMPT%/$p/g; $t } } for ( @lines ) { s(\bint\s+(\w+)\s*=\s*read\s*\((.*)\)\s*;){ populate_template($1,$2) }e; }