Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何检查单词是日语还是英语?_Java - Fatal编程技术网

Java 如何检查单词是日语还是英语?

Java 如何检查单词是日语还是英语?,java,Java,我想用这种方法对英语单词和日语单词进行不同的处理: if (english) { // say english } else { // say not english } 如何在JSP中实现这一点?好吧,日语单词使用256以上的字符,而英语不使用。您可以测试word中是否有一个字符=256。请尝试下面的方法 char ch='A'; if ((int)ch<=255) { System.out.println("This is english letter");

我想用这种方法对英语单词和日语单词进行不同的处理:

if (english) {
    // say english
} else {
    // say not english
}

如何在JSP中实现这一点?

好吧,日语单词使用256以上的字符,而英语不使用。您可以测试word中是否有一个字符
=256

请尝试下面的方法

char ch='A';

if ((int)ch<=255) {
    System.out.println("This is english letter");
} else {
    System.out.println("This is Japnese letter");
}
charch='A';

如果((int)ch日语字符位于某些Unicode范围内:

  • U+3040–U+309F:平假名
  • U+30A0–U+30FF:片假名
  • U+4E00–U+9FBF:汉字
所以你基本上需要做的就是检查角色的代码点是否在已知范围内

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");
    }
}
Set japaneseuenicodeblock=new HashSet(){{
添加(UnicodeBlock.HIRAGANA);
添加(片假名块);
添加(UnicodeBlock.CJK_统一表意文字);
}};
String mixed=“这是日本报纸的标题:ラドクリフ、マラソン五輪代表に1.万M出場にも含み";
for(char c:mixed.toCharArray()){
if(japaneseunicodeblock.contains(UnicodeBlock.of(c))){
System.out.println(c+“是一个日文字符”);
}否则{
System.out.println(c+“不是日语字符”);
}
}
现在还不清楚您到底想在什么时候说日语。当字符串包含日语和拉丁语(或其他!)混合字符时,或者当字符串仅包含日语字符时。上述示例至少应该是一个很好的起点


请注意,这一切与JSP完全无关。这只是一种web演示技术,允许您动态生成HTML/CSS/JS代码。在JSP文件中编写Java代码被认为是一种挑战。

如果chrachter不是英语,如何用英语实现这一点?objective-c也可以吗?我不想用俄语实现这一点e、 请看我的问题。。