in reply to Re^7: perlform ^* variable field length
in thread perlform ^* variable field length

Hi, I managed to do the get the desired result by below code :

my @row = ('col1 : line1 col1 : line2', 'col2 : line1', 'col3 : line1', 'col4 : line1', 'col5:line1 col5:line2', 'coll6 : line1 coll6 : line2 coll6 : line3 coll6 : line4' ); while ( join('',@row) ) { for(my $i=0;$i<=$#row;$i++) { my @a = split (/\n/,$row[$i]); my $s = shift(@a); print ($s? $s . '|' : '|'); $row[$i] = join("\n",@a); } print "\n"; }

it gives desired output as :

col1 : line1|col2 : line1|col3 : line1|col4 : line1|col5:line1|coll6 : + line1| col1 : line2||||col5:line2|coll6 : line2| |||||coll6 : line3| |||||coll6 : line4|

but condition in while loop looks kinda ugly, can be below code be further reduced ?