in reply to Reading Multiple lines
As presented, your code won't run:
syntax error at mick2020.pl line 17, near "}" Execution of mick2020.pl aborted due to compilation errors.which isn't a good start.
AFAIKS the problem is that before the if you've chomped the input line, but in the print after the if you don't restore the line ending. (Though you do at the end, inside the if.)
This appears to do what you seem to want:
Noting that the test for whether the line ends in " allows for all kinds of trailing whitespace on the line -- not just the line ending. Also, it only removes [\r\n] at the end of the lines it concatenates. Your code was smacking [\r\n] everywhere, except on lines that ended with " -- which may, or may not, have been deliberate.while (<DATA>) { while (($_ !~ /"\s*$/) && !eof) { s/[\r\n]+$// ; $_ .= ' '.<DATA> ; } ; print $_; } __DATA__ "data", "data" ,"data", "data","data", "data" "data", "data" ,"data", "data with new line ", "and some more! ","data", "data" "data", "data" ,"data", "data","data", "data" "tada", "tada
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Reading Multiple lines
by mick2020 (Novice) on Oct 15, 2008 at 16:01 UTC | |
by gone2015 (Deacon) on Oct 15, 2008 at 23:49 UTC |