如何在Perl中对中日韩(CJK)字符进行排序?
据我所知,按笔画数排序,然后按偏旁部首排序,似乎是这些语言的排序方式。还有一些按照发音排序的方法,但这种方法较不常见。
我尝试使用:
perl -e 'print join(" ", sort qw(工 然 一 人 三 古 二 )), "\n";'
# Prints: 一 三 二 人 古 工 然 which is incorrect
我尝试使用来自CPAN的Unicode::Collate,但它说:
默认情况下,CJK统一表意符号按Unicode代码点顺序排序...
如果我能获得每个字符的笔画数数据库,那么我就可以轻松地对所有字符进行排序,但是似乎Perl中没有这个功能,也没有任何我能找到的模块进行封装。
如果您知道如何在其他语言中对CJK进行排序,则在回答此问题时提及将有所帮助。