[Moscow.pm] utf8

Ruslan Zakirov ruz на bestpractical.com
Пн Мар 12 16:53:56 PDT 2012


Привет.

http://www.unicode.org/reports/tr15/ - тут смотреть таблички и картинки.

Далее читать и обрабатывать свои данные:

http://search.cpan.org/~sadahiro/Unicode-Normalize-1.14/Normalize.pm

http://search.cpan.org/~flora/perl-5.14.2/pod/perlunicode.pod#Unicode_Regular_Expression_Support_Level

Смотрим секцию RL2.1   Canonical Equivalents


2012/3/13 Ali Ramazanov <netspamer на gmail.com>:
> Приветствую всех!
>
> Возможно я нарвался на что-то попсовое, но всё равно был удивлён.
> Работая со строками как с октетами, обнаружил, что eq не даёт положительно
> результата на две строки  (при выводе на консоль они  идентичны).
> Перевел их во внутренний формат, обнаружил, что буква 'й' может по-разному
> записываться.
>
> первый вариант:
> $ perl -e 'use Encode warn Encode::encode("utf8", "\x{438}\x{306}")'
> й at -e line 1.
>
> декомпозируется на два символа:
> $ perl -e 'use Encode warn Encode::encode("utf8", "\x{438}")'
> и at -e line 1.
>
> $ perl -e 'use Encode warn Encode::encode("utf8", "\x{306}")'
> ̆ at -e line 1.
> -------------------------------------------------
>
> второй вариант:
> $ perl -e 'use Encode warn Encode::encode("utf8", "\x{439}")'
> й at -e line 1.
>
>
> На консоле первый и второй вариант выглядит абсолютно одинаково, как с этим
> правильно бороться кроме как замены и привидения к одному виду?)
> Потратил какое-то время и не хотел верить свои глазам :)
>
> Спасибо!
>
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>



-- 
Best regards, Ruslan.


Подробная информация о списке рассылки Moscow-pm