Android中判断字符串是否包含汉字

本文介绍了一种用于检测字符串中是否包含汉字以及判断字符串是否完全由汉字组成的算法。通过正则表达式和Unicode编码范围,该算法能准确识别GB2312、GBK和UTF-8等编码下的汉字。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考网址:https://blog.youkuaiyun.com/changjiale110/article/details/78915969

//判断是否存在汉字
public boolean checkcountname(String countname){
   Pattern p = Pattern.compile("[\u4e00-\u9fa5]");
   Matcher m = p.matcher(countname);
   if (m.find()) {
        return true;
   }
  return false;
}

//判断整个字符串都由汉字组成
public boolean checkname(String name){
   int n = 0;
   for(int i = 0; i < name.length(); i++) {
       n = (int)name.charAt(i);
       if(!(19968 <= n && n <40869)) {
           return false;
        }
    }
    return true;
}

汉字编码范围:\u4e00-\u9FA5

双字节字符编码范围:\u0391-\uFFE5

双字节字符编码范围

1.GBK (GB2312/GB18030)
/x00-/xff GBK双字节编码范围
/x20-/x7f ASCII
/xa1-/xff 中文 gb2312
/x80-/xff 中文 gbk

2.UTF-8 (Unicode)

/u4e00-/u9fa5 (中文)
/x3130-/x318F (韩文
/xAC00-/xD7A3 (韩文)
/u0800-/u4e00 (日文)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值