#!/usr/bin/perl
# Unicode 順のソート
use strict;
use warnings;
use utf8;
use Encode;
use POSIX qw(locale_h);
use locale;
use Unicode::Collate;
my $charsetConsole = 'UTF-8';
binmode( STDIN, ":encoding($charsetConsole)" );
binmode( STDOUT, ":encoding($charsetConsole)" );
binmode( STDERR, ":encoding($charsetConsole)" );
my @list = split( //, 'あぁAAアアaはばぱがかぴひび' );
my $locale = "ja_JP.UTF-8";
setlocale( LC_ALL, $locale );
print "locale($locale)\n";
print join( "", sort(@list) ) . "\n";
print "\n";
my $Collator = Unicode::Collate->new();
print "Unicode::Collate\n";
print join( "", $Collator->sort(@list) ) . "\n";
locale(ja_JP.UTF-8)
AaアAぁあかがはばぱひびぴア
Unicode::Collate
aAAぁあアアかがはばぱひびぴ
Last edited by TakeAsh, 2018-09-01 01:15:27