in reply to weird files
If I get your question right, the following code should do what you want. I'm sure others will suggest more concise solutions though ;-)
#!perl use strict; use warnings; my @data; my @buffer; while (<DATA>) { chomp($_); s/^\s*(.+?)\s*$/$1/; if (/^\s*$/ && scalar(@buffer) > 0) { push(@data, [@buffer]); @buffer = (); } else { push(@buffer, split(/\s+/, $_)); } } if (scalar(@buffer) > 0) { push(@data, [@buffer]); @buffer = (); } foreach my $array (@data) { print join(", ", @$array), "\n"; } __DATA__ 1 2 3 1 1 6 4 8 5 6 9 0 8 89 5 0 0 8 7 8 4 6 6 3 79 0 588 7 9 4 3 9 2 9 9 23 8 0 2 8 98 0 9 7 8 0 0
Hope this helps, -gjb-
|
|---|