prefix_print("A\nB");
prefix_print("C\n");
####
use strict;
use warnings;
my $prefix = 'P';
{
my $first = 1;
sub prefix_print {
print $prefix if($first);
print map {
join($prefix, split(/^/,$_,-1));
} @_;
$first = $_[-1] =~ m/\n$/;
}
}
prefix_print("A\nB","C\n");
prefix_print("A\nB");
prefix_print("C\n");
####
PA
PBC
PA
PBC
####
use strict;
use warnings;
my $prefix = 'P';
{
my $first = 1;
sub prefix_print {
do {
print $prefix if($first);
$first = ($_ =~ m/\n$/);
print join($prefix, split(/^/,$_,-1));
} foreach @_;
}
}
prefix_print('');
prefix_print("y");
prefix_print("A\nB","C\n");
prefix_print("A\nB");
prefix_print("C\n");
prefix_print("X","Y","Z","\n","A","B","C");
prefix_print("\n");
prefix_print("\n");
prefix_print('');
prefix_print();
prefix_print("the end\n");
####
PyA
PBC
PA
PBC
PXYZ
PABC
P
Pthe end