Update: Added one more test case.#!/usr/bin/perl use strict; use warnings; while (my $line = get_CSVline()) { print "$line\n"; } sub get_CSVline { my $buffer; while (!defined($buffer) or is_odd_quotes($buffer) ) { my $temp =<DATA>; $buffer .= $temp; } chomp $buffer; $buffer =~ s/\n/\\n/g; #### make "\n" "visible" ### return $buffer; } sub is_even_quotes { my $string = shift; return !( ($string=~tr/"//) % 2); } sub is_odd_quotes { my $string = shift; return ( ($string=~tr/"//) % 2); } =PRINTS: 1,2,3.3,"\n",4,5 6,7,8,9 6,"\n",7,8 a,b,c,"something\nmore" 1,2,3 1,"x\n","y","z\n",3 "3.5 "" disks" =cut __DATA__ 1,2,3.3," ",4,5 6,7,8,9 6," ",7,8 a,b,c,"something more" 1,2,3 1,"x ","y","z ",3 "3.5 "" disks"
In reply to Re^3: Embedded Newlines or Converting One-Liner to Loop
by Marshall
in thread Embedded Newlines or Converting One-Liner to Loop
by mwb613
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |