java怎么把字符串中的的汉字取出来
1.判断字符串是否全是汉字。
String str1 = "java判断是否为汉字"
String str2 = "全为汉字"
String reg = "[\\u4e00-\\u9fa5]+"
boolean result1 = str1.matches(reg)//false
boolean result2 = str2.matches(reg)//true
2.提取字符串中的汉字。
String str = "java怎么把asdasd字符串中的asdasd的汉字取出来"
String reg = "[^\u4e00-\u9fa5]"
str = str.replaceAll(reg, " ")
System.out.println(str)
3.判断字符串中是否含有汉字。
boolean result = (str.length() == str.getBytes().length)//true:无汉字 false:有汉字
4.获取字符串中汉字的个数。
int count = 0
String reg = "[\\u4e00-\\u9fa5]"
String str = "java获取汉字Chinese的个数"
Pattern p = Pattern.compile(reg)
Matcher m = p.matcher(str)
while (m.find()) {for (int i = 0; i <= m.groupCount(); i++) {count = count + 1}}
System.out.println("共有汉字 " + count + "个 ")
String str = "java怎么把字符串中的的汉字取出来";
String reg = "[^\u4e00-\u9fa5]";
str = str.replaceAll(reg, "");
//使用正则表达式
Pattern pattern = Pattern.compile("[^\u4E00-\u9FA5]");
//[\u4E00-\u9FA5]是unicode2的中文区间
Matcher matcher = pattern.matcher("abcd123456中文");
System.out.println(matcher.replaceAll(""));