Это не объяснение. Символ-то почему режется?
Ладно бы на "широкий символ" ругнулось - это понятно. Но почему строка
выводится не целиком - вот вопрос.


22 мая 2014 г., 16:26 пользователь [email protected] <[email protected]>написал:

> http://stackoverflow.com/questions/6162484/why-does-
> modern-perl-avoid-utf-8-by-default/6163129#6163129
>
>
> On 22.05.2014 15:24, Алексей Мышкин wrote:
>
>> А объяснить?
>>
>>
>> 22 мая 2014 г., 15:16 пользователь Antonio Nikishaev <[email protected]
>> <mailto:[email protected]>> написал:
>>
>>
>>
>>     On 22 May 2014, at 14:58, Алексей Мышкин <[email protected]
>>     <mailto:[email protected]>> wrote:
>>
>>      > Всем доброго дня.
>>      > Есть такой код:
>>      > #!/usr/bin/env perl
>>      > use strict;
>>      > #use utf8;
>>      >
>>      > my $BadChars = quotemeta '№«».,';
>>      >
>>      > my $BadCharsRX = qr/$BadChars/u;
>>      >
>>      > my $str = '... «»«»';
>>      >
>>      > $str =~ s/([$BadCharsRX])[$BadCharsRX]+/$1/g;
>>      >
>>      > print "$str\n";
>>      > =====cut=====
>>      >
>>      > выдаёт ахинею
>>      > если сделать так:
>>      >
>>      > my $str = '... №№№ «»«»';
>>      > то начинает работать.
>>      >
>>      > Что за чёрт?
>>      >
>>      > Perl v5.14.2
>>
>>     Писать надо нормально. Всё будет работать
>>
>>     use utf8;
>>     use open qw<:std :utf8>;
>>
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org
>



-- 
С уважением,
Мышкин Алексей.
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить