作者: 藤岡和夫
日時: 2006/1/27(21:41)
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/