我想要带有变音符号的元音表,但不想手动搜索符号表。
是否可以通过交叉以下某些语言的元音列表和变音符号列表来生成此表:Java、PHP、Wolfram Mathematica、.NET 语言等?
我需要有字符(unicode)作为输出。
Java 解决方案
我发现有一个特殊的 Unicode 功能:http ://en.wikipedia.org/wiki/Unicode_normalization
Java 从 1.6 http://docs.oracle.com/javase/6/docs/api/java/text/Normalizer.html开始支持它
所以,示例代码是:
public static void main(String[] args) {
String vowels = "aeiou";
char[] diacritics = {'\u0304', '\u0301', '\u0300', '\u030C'};
StringBuilder sb = new StringBuilder();
for(int v=0; v<vowels.length(); ++v) {
for(int d=0; d<diacritics.length; ++d) {
sb.append(vowels.charAt(v));
sb.append(diacritics[d]);
sb.append(' ');
}
sb.append(vowels.charAt(v));
sb.append('\n');
}
String ans = Normalizer.normalize(sb.toString(), Normalizer.Form.NFC);
JOptionPane.showMessageDialog(null, ans);
}
即我们只是在元音后面加上变音符号,然后对字符串应用规范化。