如何在Java字符串中找到第一个汉字
示例:
如何在上述字符串中获取第一个汉字“杨”的索引。 感谢!
String str = "xing 杨某某";
如何在上述字符串中获取第一个汉字“杨”的索引。 感谢!
String str = "xing 杨某某";
这可能会有所帮助:
public static int firstChineseChar(String s) {
for (int i = 0; i < s.length(); ) {
int index = i;
int codepoint = s.codePointAt(i);
i += Character.charCount(codepoint);
if (Character.UnicodeScript.of(codepoint) == Character.UnicodeScript.HAN) {
return index;
}
}
return -1;
}
在您的情况下,您有四个ASCII字符,然后是其他的中文字符,因此您可以使用for循环检查当一个字符不再是ASCII时。
所以,如果字符与ASCII不同,则在这种情况下,它是一个中文字符。
for(int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
int char = (int) c;
if(char < 0 || char > 255) // Is not ascii
System.out.println("The first chinese char is: " + str.charAt(i);
}