1.
[oracle@oadb utf-8]$ cat a1.pl
my $str="測試更健康";
print length($str);
print "\n";
print $str."\n";
print "11111111111111\n";
[oracle@oadb utf-8]$ perl a1.pl
15
測試更健康
11111111111111
字元串長度為15
[oracle@oadb utf-8]$ cat a1.pl
use Encode;
my $str="測試更健康";
print length($str);
print "\n";
print $str."\n";
print "11111111111111\n";
$str=encode_utf8($str);
print length($str);
print "\n";
print $str."\n";
[oracle@oadb utf-8]$ perl a1.pl
15
測試更健康
11111111111111
30
æµè¯æ´å¥åº·
[oracle@oadb utf-8]$
$str=encode_utf8($str); 後字元長度變成30
啟用utf8:
[oracle@oadb utf-8]$ perl a2.pl
5
Wide character in print at a2.pl line 6.
測試更健康
11111111111111
字元串長度變成5
[oracle@oadb utf-8]$ cat a2.pl
use Encode;
use utf8;
my $str="測試更健康";
print length($str);
print "\n";
print $str."\n";
print "11111111111111\n";
$str=encode_utf8($str);
print length($str);
print "\n";
print $str."\n";
print "11111111111111\n";
[oracle@oadb utf-8]$ perl a2.pl
5
Wide character in print at a2.pl line 6.
測試更健康
11111111111111
15
測試更健康
11111111111111