怎么判断一个字符串中是否包含汉字?
解决方案 »
- 怎么去掉com.opensymphony.xwork2.util.logging.commons.CommonsLogger的error信息
- 一个很弱智的小问题
- struts s:token 使用有问题,请教各位大仙!!!
- struts2+hibernate登录验证问题
- spring配置文件中能否 ref到另一个包里的bean啊
- 一个关于响应用户请求的问题
- saif-spring.jar 找寻一下午了! !! 请大家帮我寻找这个jar包,多谢!!
- 请教标签问题
- [超级简单]struts2里,jsp一个参数传递给另一JSP怎么写了
- 问个STRUTS里form表单的问题
- Myeclipse和weblogic的问题高分求解
- 多线程的监控,如何实现?
* 字符串中是否含有中文
*
* @param s
* 字符串
* @return
*/
public static boolean includeChinese(String s) {
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (c > 100) {
return true;
}
}
return false;
}
Pattern p=Pattern.compile("[\u4e00-\u9fa5]*");
Matcher m=p.matcher("这是中文");
System.out.println(m.matches());
m=p.matcher("this is English");
System.out.println(m.matches());
}
[\u2E80-\u9FFF]
匹配所有东亚区的语言
[\u4E00-\u9FFF]
匹配简体和繁体
[\u4E00-\u9FA5]
匹配简体
中文和英文占的字节大小是不一样的byte[] bytes = str.getBytes("GBK");---GBK中文占2个字符
如果bytes的长度等于字符窜的长度说明没有中文
public static void main(String[] args) {
Pattern p=Pattern.compile("[\u4e00-\u9fa5]*");
Matcher m=p.matcher("这是aaa中文");
if(m.find())
{
System.out.println("包含中文!");
break;
}else
{
System.out.println("不包含中文!");
}
}
Pattern p=Pattern.compile("[\u4e00-\u9fa5]+?"); Pattern p=Pattern.compile("[\u4e00-\u9fa5]+?");
Matcher m=p.matcher("这是aaa中文");
if(m.find())
{
System.out.println("包含中文!"+m.group());
}else
{
System.out.println("不包含中文!");
}