On Thursday, Oct 3, 2002, at 21:52 Asia/Tokyo, Jarkko Hietaniemi wrote:
>> your source code is other text encodings than UTF-8.  But tr/// does
>> not embrace this magic.
>>
>
> Clarification: tr/A-E/P-T/ (the ranges) does not embrace that magic.
> tr/ABCDE/PQRST/ does work with the encoding pragma since that employs
> string literals.

Aw......  I didn't even try.

But tr/// w/o range is like a regex w/o char class....

Oh yes, char class and does work w/ use encoding and w/ range.  This 
counter-intuitive example was discovered before I came up with eval 
qq{} trick;

# eval qq{ \$kana =~ tr/\xA4\xA1-\xA4\xF3/\xA5\xA1-\xA5\xF3/ };

my $offset = ord("\xA5\xA1") - ord("\xA4\xA1");
$kana =~ s/([\xA4\xA1-\xA4\xF3])/chr(ord($1) + $offset)/eg;

Dan the Man with Too Many Backslashes fed for a day :)

Reply via email to