[Vienna-pm] Zeilenumbruch ersetzen
josef schmid
e9427749 at stud4.tuwien.ac.at
Fri Dec 5 14:05:56 PST 2008
Stefan Weiss schrieb:
> On 2008-12-05 21:29, Fabio Valeri wrote:
[...]
> Das legt nahe, dass ein Zeilenumbruch innerhalb einer Zelle als \n (line
> feed) vorliegt, und das Zeilenende \r\n (carriage return + line feed) ist.
>
[...]
>
> Probier's mal so:
>
> $/ = "\r\n";
> while (<INPUT>) {
> chomp(my $row = $_);
> $row =~ s/\n/xxx/g;
> print "$row<tr>\n";
> }
>
[...]
> Die spezielle Variable $/ legt fest, welche Zeichen(folge) Perl als
> Zeilenende ansieht. --> perldoc perlvar
Für die Eingabe:
Wenn man "use English '-no_match_vars';" verwendet, auch
$INPUT_RECORD_SEPERATOR.
Aber was ich eigentlich anmerken wollte:
Er braucht wahrscheinlich auch noch "binmode *INPUT;"
da unter Wind*** ist.
BTW. Es gibt sehr sehr viele CPAN-Module für CSV parsen.
Z.B. my $p= Text::CSV_XS->new({ eol=>"\r\n",sep_char=>';',
binary=>1,verbatim=>1 });
my @result=$p->getline(\*INPUT);
Alle Behauptungen ungetestet!
pfiateng,
Jos "open my $input, '<',$filename or die" ef
More information about the Vienna-pm
mailing list