[Krakow-pm] Mam ptyanie w sprawie polskich znaków
Zbigniew Lukasiak
zzbbyy at gmail.com
Thu May 20 11:14:39 PDT 2010
2010/5/20 Reinhard Erich Voglmaier <voglmaier at hotmail.com>:
> Dzien Dobry,
> Przepraszam, ja nie mowie dobrze polskiego ale sprobuje ...
> Chcę napisać program, który czyta tekst w języku polskim i liczy słówy.
> Używam funkcji "pattern matching" \w ale nie nie dziala.
> Perl nie rozumie niektórych znaków ( na przykład : ł, ć, ó, ż ).
>
> Potem spróbował
> use POSIX qw(locale_h) ;
> setlocale(LC_ALL,"Polish_Poland") or die "Could not set locale";
>
> Sama problem.
> Czy możesz mi pomóc ?
> Używam Activestate Perl na Windows XP.
>
Witam,
Oczywiście \w powinno działać. Wydaje mi się, że locale nie są tutaj
wogóle ważne - bo teraz Perl odróżnia znaki od bajtów. Ważne jest
natomiast, żeby odpowiednio te znaki 'odkodowywać' jak się je czyta z
zewnątrz.
Proszę spróbować na przykład:
use utf8;
binmode(STDOUT, ":utf8");
my $string = "łćóż";
while( $string =~ /(\w)/g ){
print $1;
}
print "\n";
Pozdrawiam,
Zbigniew Lukasiak
http://brudnopis.blogspot.com/
http://perlalchemy.blogspot.com/
More information about the Krakow-pm
mailing list