Skip to content

Instantly share code, notes, and snippets.

@yusukebe
Last active March 2, 2020 09:32
Show Gist options
  • Save yusukebe/699e3f5435e9a6ebed4331a9190c2c8e to your computer and use it in GitHub Desktop.
Save yusukebe/699e3f5435e9a6ebed4331a9190c2c8e to your computer and use it in GitHub Desktop.
中国語の繁体字・簡体字へ変換する
use utf8;
use Unicode::Unihan;
use feature qw/say/;
binmode STDOUT, ":utf8";
my $original = "楽";
say $original; # 楽
my $uh = Unicode::Unihan->new;
my $traditional = $uh->ZVariant($original);
$traditional = unescape($traditional);
say $traditional; # 樂
my $simplified = $uh->SimplifiedVariant($traditional);
$simplified = unescape($simplified);
say $simplified; # 乐
sub unescape {
my $char = shift;
$char =~ m!U\+([0-9a-fA-F]{4})!;
return chr(hex($1));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment