ユニコード文字をコードポイントで表現する




  1. Perl




  2. 文字コード



  3. Unicode


  4. コードポイント

 ユニコード文字には、すべての文字にコードポイントが割り当てられています。Perlでは、ユニコード文字をコードポイントを使って表現することができます。

# あ
my $str = "\x{3042}";

 コードポイントで表現されたユニコード文字を含む文字列は、utf8プラグマのあるなしにかかわらず、常に内部文字列として扱われるので注意してください。つまりすでにデコードされた状態だということですね。出力するには以下のようにエンコードします。

use Encode 'encode';
print encode('UTF-8', $str);

 windowsの場合はcp932を文字コードとして指定してみてください。