On Sun, 22 Jan 2006 19:26:20 +0900
藤岡和夫 <kazuf@...> wrote:
> 毎度です。
>
> #!/cygdrive/c/Perl5.8/bin/perl
> ##!/usr/bin/perl
> use utf8;
> my $str = "日本語";# UTF-8で書く
> print "$str: ",length $str,"\n";
> foreach (split //, $str){
> print sprintf("%04X\x20", ord);
> }
>
> のようなサンプルを動かすと、
>
> $ ./utf8test.pl
> Wide character in print at ./utf8test.pl line 5.
> 日本語: 3
> 65E5 672C 8A9E
>
> のように出力されるのですが、Wide character in printのメッセージはなぜ出
> るのでしょうか。これはエラー?
Bruce.さんの「正規表現ハンドブック」、55ページ(SECTION 03.03 Unicode)
を調べながら、気が付いたのですが、
use utf8;
ではなくて、
use encoding "utf8";
なら、Wide ・・・のエラーは出ませんね。
藤岡 和夫
kazuf@...
TS Networkのために http://homepage1.nifty.com/kazuf/