我希望在此方法中使用英语单词和日语单词的不同过程:
if (english) {
// say english
} else {
// say not english
}
如何在JSP中实现这一目标?
答案 0 :(得分:10)
日语字符位于某些Unicode范围内:
所以你基本上需要做的就是检查角色的代码点是否在已知范围内。
Set<UnicodeBlock> japaneseUnicodeBlocks = new HashSet<UnicodeBlock>() {{
add(UnicodeBlock.HIRAGANA);
add(UnicodeBlock.KATAKANA);
add(UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS);
}};
String mixed = "This is a Japanese newspaper headline: ラドクリフ、マラソン五輪代表に1万m出場にも含み";
for (char c : mixed.toCharArray()) {
if (japaneseUnicodeBlocks.contains(UnicodeBlock.of(c))) {
System.out.println(c + " is a Japanese character");
} else {
System.out.println(c + " is not a Japanese character");
}
}
目前还不清楚你什么时候想说日语。当字符串包含混合的日语和拉丁语(或其他!)字符时,或者字符串包含仅日语字符时。上面的例子至少应该是一个很好的起点。
请注意,这一切与JSP完全无关。 JSP只是一种Web表示技术,允许您动态生成HTML / CSS / JS代码。在JSP文件中编写Java代码被视为bad practice。
答案 1 :(得分:0)
AFAIK,日语单词使用超过256的字符,而英语不使用它们。您可以测试其中一个字符是否为>= 256
。
答案 2 :(得分:-1)
尝试以下
char ch='A';
if ((int)ch<=255) {
System.out.println("This is english letter");
} else {
System.out.println("This is Japnese letter");
}
你需要做的是打破char数组中的String !!!
祝你好运!!!