将韩文(韩文字母)字母分解成它的元素?

Break down a Hangeul (Korean letter) letter into its elements?

例如,有没有办法从一个韩文字母'공'中得到ㄱ、ㅗ、ㅇ这三个元素?

java.text.Normalizer.normalize() 与 NFD 一起使用:

String compact = "공";
System.out.println(compact);
String decomposed = Normalizer.normalize(compact, Normalizer.Form.NFD);
System.out.println(Arrays.toString(decomposed.toCharArray()));

会输出

공
[ᄀ, ᅩ, ᆼ]

注意:当您将 decomposed 打印为字符串 (System.out.println(decomposed)) 时,它会打印为一个字符。或 3. 取决于输出控制台 - 如果加入字形。