有没有办法确定字符串是英语还是阿拉伯语?
这是我刚刚尝试过的简单逻辑:
public static boolean isProbablyArabic(String s) { for (int i = 0; i < s.length();) { int c = s.codePointAt(i); if (c >= 0x0600 && c <= 0x06E0) return true; i += Character.charCount(c); } return false; }
当且仅当在文本中找到阿拉伯语unicode代码点时,它才将文本声明为阿拉伯语。您可以增强此逻辑,使其更适合您的需求。
范围0600-06E0是阿拉伯字符和符号的代码点范围(请参见Unicode表)