Thread use utf8 und Verhalten von String-Operationen
(65 answers)
Opened by rosti at 2011-08-03 19:16
Gute Frage ;)
Intern: Die Zeichen werden weder eingegeben, noch sind sie im Script als Solche notiert (siehe Beispiel). Extern A: Die Zeichen sind im Script als Solche notiert, das Script ist utf-8-kodiert gespeichert, Pragma utf8 wird wirksam Extern b: die Zeichen kommen aus einer DB, CGI-Parameter o.ä. Bitte teste mal: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 # Perl-intern, byte semantic my $s = sprintf "%s", "\303\244\303\244",; print length($s), "\n"; # number of bytes # force character semantic my @cp = unpack "U0U*", $s; # characters to codepoints my $chr = pack "U0U*", @cp; # codepoints to characters # jetzt betrachtet Perl die Zeichen nicht mehr als bytes print length $chr; # number of characters |