Hi,
I am running this on z/OS and perl-5.8.6.
$a = 160;
$b = 240;
for($i=$a;$i<=$b;$i++)
{
$str = join "",$str, pack 'U*',$i;
}
if ($str =~ /(\p{inlatin1supplement}+)/)
{
print "\$1 : $1\n";
}
1) If I pipe the o/p to od -tc -tx, $1 shows me
two bytes for each code pt value (e.g. \x8a\x41 for
value=192).
2) If I set $a = 192, $b = 240, and repeat the
test, then, $1 now shows me 1 byte for each matching
code pt value (e.g. \x64 for value=192).
For all values of 160 <= $a < 192, ($b = 240), $1
shows two bytes and at $a = 192, $1 shows 1 byte.
Why is it so ? Does the codepoint value 192 have
any special significance in utf-ebcdic ?
Thanks,
Rajarshi.
__________________________________
Discover Yahoo!
Have fun online with music videos, cool games, IM and more. Check it out!
http://discover.yahoo.com/online.html