怎么判断一个字符串中是否包含汉字?
解决方案 »
- 【分享】一次有意思的解决绑定变量问题(where in list问题)
- 创建XML文件,如何控制ATTRIBUTE的顺序?
- weblogic集群,数据库锁的问题
- spring 的quartz 的错误,高手请进!
- ResultSet.nest()问题
- 今天的面试题,好难喔,我想没多少人会做吧!!!!
- 有人做过联通的短消息的WEB SERVices吗,给个例子好不
- webwork2.2+spring+hibernate的问题!大家帮忙看看
- 请各位高手帮忙,有关于struts中数据源的使用
- 一个EJB例子运行出错,100分请教!一定给分!
- 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("不包含中文!");
}