Thread Kann Perl UTF-8 nicht richtig parsen?
(2 answers)
Opened by Gast at 2008-09-15 18:16
Hallo, ich versuche mit Perl 5.10 unter Cygwin folgendes:
Eine UTF-8-codierte HTML-Seite wird mit CURL geladen und per Pipe an ein Perl-Skript gegeben, das mir daraus Daten (Tage) extrahieren soll, nach dem Muster Code: (dl
)
HH:MM, D[D]. (Jan|Feb|Mär|...|Dez). YYYY Hier ist der Perl-Code: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 binmode STDIN, ":utf8"; while (<STDIN>) { if ( 0 != m/\d\d:\d\d, \d\d?\. ...\. 20\d\d/) { print "$&\n"; } } Hier ist eine beispielhafte (zur besseren Lesbarkeit gekürzte) Eingabe: Code: (dl
)
1 <li>11:54, 3. Jun. 2008 (<a href= und hier ist die Ausgabe, die man erhält: Code: (dl
)
1 11:54, 3. Jun. 2008 Wo ist der Mai? Sieht so aus, als würde das UTF-8-kodierte "ä" im März dem automatisch generierten Parser ein Bein stellen, so dass er den Mai nicht mehr erkennt, denn der März wird ja tadellos angegeben. Ist das Problem bekannt? Was habe ich übersehen? Danke und Gruß, Stefan E. |