java判断字符是否是汉字
内容摘要
java可以使用正则表达式判断/**
* 判断一个字符是否是汉字
* PS:中文汉字的编码范围:[u4e00-u9fa5]
*
* @param c 需要判断的字符
* @return 是汉字
* 判断一个字符是否是汉字
* PS:中文汉字的编码范围:[u4e00-u9fa5]
*
* @param c 需要判断的字符
* @return 是汉字
文章正文
java可以使用正则表达式判断
/** * 判断一个字符是否是汉字 * PS:中文汉字的编码范围:[u4e00-u9fa5] * * @param c 需要判断的字符 * @return 是汉字(true), 不是汉字(false) */ public static boolean isChineseChar(char c) { return String.valueOf(c).matches("[u4e00-u9fa5]"); }
示例:
/** * 判断一个字符是否是汉字 * * @author Yawei Xi * @date 2018-8-20 */ public class Test { public static void main(String[] args) { char a = ' '; char b = 0; char c = 'a'; char d = '中'; System.out.println(isChineseChar(a)); System.out.println(isChineseChar(b)); System.out.println(isChineseChar(c)); System.out.println(isChineseChar(d)); } /** * 判断一个字符是否是汉字 * PS:中文汉字的编码范围:[u4e00-u9fa5] * * @param c 需要判断的字符 * @return 是汉字(true), 不是汉字(false) */ public static boolean isChineseChar(char c) { return String.valueOf(c).matches("[u4e00-u9fa5]"); } }
测试结果:
false false false true
汉字基本集中在[19968,40869]之间,共有20901个汉字
unicode编码范围:
汉字:[0x4e00,0x9fa5](或十进制[19968,40869])
数字:[0x30,0x39](或十进制[48, 57])
小写字母:[0x61,0x7a](或十进制[97, 122])
大写字母:[0x41,0x5a](或十进制[65, 90])
更多java知识请关注java基础教程。
代码注释
[!--zhushi--]