java 判断字符串是否包含汉字的方法
2017-10-15 15:11
423 查看
方法1:利用汉字的Unicode编码范围
public static void main(String[] args) throws UnsupportedEncodingException {
int count = 0;
String regEx = "[\\u4e00-\\u9fa5]";
String str = "中文fdas ";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(str); //p.matcher()只适合做
while (m.find()) { //m.matches()全部匹配为true
//m.groupCount()用于获取正则模式中子模式匹配的组,即只有正则中含有()分组的情况下才有用
for (int i = 0; i <= m.groupCount(); i++) {
count++;
}
}
System.out.println("共有 " + count + "个 ");
}
方法2:根据汉字本身编码为GBK和ASCII的长度区别
中文字符占2个字节,英文字符占1个字节
故:System.out.println(s.getBytes("GBK").length == s.length() ? "无中文字符" : "有中文字符");
public static void main(String[] args) throws UnsupportedEncodingException {
int count = 0;
String regEx = "[\\u4e00-\\u9fa5]";
String str = "中文fdas ";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(str); //p.matcher()只适合做
while (m.find()) { //m.matches()全部匹配为true
//m.groupCount()用于获取正则模式中子模式匹配的组,即只有正则中含有()分组的情况下才有用
for (int i = 0; i <= m.groupCount(); i++) {
count++;
}
}
System.out.println("共有 " + count + "个 ");
}
方法2:根据汉字本身编码为GBK和ASCII的长度区别
中文字符占2个字节,英文字符占1个字节
故:System.out.println(s.getBytes("GBK").length == s.length() ? "无中文字符" : "有中文字符");
相关文章推荐
- java 判断字符串中是否包含汉字
- java判断字符串中是否包含汉字
- java判断字符串中是否有中文或者汉字的方法
- Java判断字符串中是否包含中文方法
- java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字 分类: Android JAVA 2015-06-07 21:08 31人阅读 评论(0) 收藏
- java判断字符串是否包含汉字
- Java把字符串中的数字删除的方法和判断字符串里面是否有汉字的方法
- java 判断字符串中是否包含汉字
- Java中判断一个字符串是否包含另一个字符串的方法
- java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字
- java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字
- Java判断字符串中是否包含汉字
- java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字
- Java把字符串中的数字删除的方法和判断字符串里面是否有汉字的方法
- java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字
- Java判断字符串是否包含的另一字符串的方法
- Java判断字符串中是否包含中文方法
- java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字
- java 判断字符串中是否包含汉字
- java 判断字符串是否包含子串的方法