一尘不染

如何将日语字符分为汉字或假名?

java

给定以下文本,如何将每个字符分类为假名汉字

谁か确认上记これらのフ

为了得到这样的东西

誰 - kanji
か - kana
確 - kanji
認 - kanji 
上 - kanji 
記 - kanji 
こ - kana 
れ - kana
ら - kana
の - kana
フ - kana

(对不起,如果我做错了。)


阅读 316

收藏
2020-12-03

共1个答案

一尘不染

此功能内置在Character.UnicodeBlock类中。与日语相关的Unicode块的一些示例:

Character.UnicodeBlock.of('誰') == CJK_UNIFIED_IDEOGRAPHS
Character.UnicodeBlock.of('か') == HIRAGANA
Character.UnicodeBlock.of('フ') == KATAKANA
Character.UnicodeBlock.of('フ') == HALFWIDTH_AND_FULLWIDTH_FORMS
Character.UnicodeBlock.of('!') == HALFWIDTH_AND_FULLWIDTH_FORMS
Character.UnicodeBlock.of('。') == CJK_SYMBOLS_AND_PUNCTUATION

但是,一如既往,魔鬼在细节中:

Character.UnicodeBlock.of('A') == HALFWIDTH_AND_FULLWIDTH_FORMS

哪里是全角字符。因此,这与上面的半角片假名属于同一类别。请注意,全角与常规(半角)不同A

Character.UnicodeBlock.of('A') == BASIC_LATIN
2020-12-03