[Moscow.pm] utf8

Nikolay Mishin mi на ya.ru
Пн Окт 13 13:18:10 PDT 2014


клевая конструкция -CSA
а что это?
работает!!

14.10.2014, 00:07, "artur+moscow.pm.org на niif.spb.su" <artur+moscow.pm.org на niif.spb.su>:
> 13.10.2014, 23:51, "Nikolay Mishin" <mi на ya.ru>:
>>  Дорогие перломаны и перлознаи, как любил говорить мой хороший знакомый,
>>  Приходит мне на вход строка (https://github.com/mishin/presentation/blob/master/show_utf.pl)
>>  вида
>>  \(42f) \(43b)\(44e)\(431)\(43b)\(44e) \(41f)\(435)\(440)\(43b)
>>  - (так utf экспортируется в dsx в IBM Datastage)
>>  ну я ее преобразую к виду
>>  \x{42f} \x{43b}\x{44e}\x{431}\x{43b}\x{44e} \x{41f}\x{435}\x{440}\x{43b}
>>
>>  my $utf_str_2 =
>>    "\(42f) \(43b)\(44e)\(431)\(43b)\(44e) \(41f)\(435)\(440)\(43b)";
>>  $utf_str_2 =~ s/\((\w+)\)/\\x{$1}/g;
>>
>>  вот код
>>
>>  #!/usr/bin/env perl
>>  use utf8;
>>  use Modern::Perl;
>>  use Encode::Locale;
>>  use Data::Dumper qw( Dumper );
>>  if (-t) {
>>  binmode( STDIN, ":encoding(console_in)" );
>>  binmode( STDOUT, ":encoding(console_out)" );
>>  binmode( STDERR, ":encoding(console_out)" );
>>  }
>>  my $love = "Я люблю Перл";
>>  print Dumper ($love);
>>  my $utf_str =
>>  "\x{42f} \x{43b}\x{44e}\x{431}\x{43b}\x{44e} \x{41f}\x{435}\x{440}\x{43b}";
>>  $utf_str =~ s/\\x\{(\w+)\}/\($1)/g;
>>  say "$utf_str";
>>  my $utf_str_2 =
>>  "\(42f) \(43b)\(44e)\(431)\(43b)\(44e) \(41f)\(435)\(440)\(43b)";
>>  $utf_str_2 =~ s/\((\w+)\)/\\x{$1}/g;
>>  say 1;
>>  say $utf_str_2;
>>  но интересно, что если
>>  у тебя есть строка
>>  $a="\x{42f}";
>>  say $a;
>>  то say выведет "Я"
>>  но если
>>  у тебя происходят преобразования
>>  и сама строка становится
>>  "\x{42f}" после
>>  $a="\(42f)";
>>  $a =~ s/\((\w+)\)/\\x{$1}/g;
>>  то
>>  say $a;
>>  выводит "\x{42f}"
>>  вопрос (тем, кто дочитал;))
>>  как сделать так, чтобы напечаталась "Я" ??
>
>   # perl -CSA -lnpe 's#\\\((...)\)#chr(hex$1)#gsme'
>   \(42f) \(43b)\(44e)\(431)\(43b)\(44e) \(41f)\(435)\(440)\(43b)
>   Я люблю Перл
>
> --
> wbw, artur
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org

-- 
С уважением
Николай Мишин



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