utf8フラグ付き文字列の大きさ
文字列のサイズの取得にはlength関数を使いますが、utf8フラグがついていると文字数が返ってきます。
文字数ではなくバイト数が欲しい場合にはencodeしてからlength関数を使います。
use strict;
use warnings;
use v5.10;
use utf8;
use Encode;
my $text = 'Perlで書く';
say "length: ", length $text; # 7
say "utf8 : ", length Encode::encode('utf8', $text); # 13
say "cp932 : ", length Encode::encode('cp932', $text); # 10
say "euc-jp: ", length Encode::encode('euc-jp', $text); # 10
関連項目
・length関数・文字列長の取得
