Character.UnicodeBlock中cjk的说明详解
程序员文章站
2024-02-28 15:40:10
本文为大家分享了character.unicodeblock中cjk的说明,供大家参考,具体内容如下
character.unicodeblock.cjk_unified...
本文为大家分享了character.unicodeblock中cjk的说明,供大家参考,具体内容如下
character.unicodeblock.cjk_unified_ideographs : 4e00-9fbf:cjk 统一表意符号
character.unicodeblock.cjk_compatibility_ideographs :f900-faff:cjk 兼容象形文字 character.unicodeblock.cjk_unified_ideographs_extension_a :3400-4dbf:cjk 统一表意符号扩展 a
cjk的意思是“chinese,japanese,korea”的简写 ,实际上就是指中日韩三国的象形文字的unicode编码
character.unicodeblock.general_punctuation :2000-206f:常用标点 character.unicodeblock.cjk_symbols_and_punctuation :3000-303f:cjk 符号和标点 character.unicodeblock.halfwidth_and_fullwidth_forms :ff00-ffef:半角及全角形式
/** * 校验一个字符是否是汉字 * * @param c * 被校验的字符 * @return true代表是汉字 */ public static boolean ischinesechar(char c) { try { return string.valueof(c).getbytes("utf-8").length > 1; } catch (unsupportedencodingexception e) { e.printstacktrace(); return false; } } /** * 验证字符串内容是否包含下列非法字符<br> * `~!#%^&*=+\\|{};:'\",<>/?○●★☆☉♀♂※¤╬の〆 * * @param content * 字符串内容 * @return 't'代表不包含非法字符,otherwise代表包含非法字符。 */ public static char validatelegalstring(string content) { string illegal = "`~!#%^&*=+\\|{};:'\",<>/?○●★☆☉♀♂※¤╬の〆"; char islegalchar = 't'; l1: for (int i = 0; i < content.length(); i++) { for (int j = 0; j < illegal.length(); j++) { if (content.charat(i) == illegal.charat(j)) { islegalchar = content.charat(i); break l1; } } } return islegalchar; } /** * 验证是否是汉字或者0-9、a-z、a-z * * @param c * 被验证的char * @return true代表符合条件 */ public static boolean isrightchar(char c) { return ischinese(c) || isword(c); } /** * 校验某个字符是否是a-z、a-z、_、0-9 * * @param c * 被校验的字符 * @return true代表符合条件 */ public static boolean isword(char c) { string regex = "[\\w]"; pattern p = pattern.compile(regex); matcher m = p.matcher("" + c); return m.matches(); } /** * 判定输入的是否是汉字 * * @param c * 被校验的字符 * @return true代表是汉字 */ public static boolean ischinese(char c) { character.unicodeblock ub = character.unicodeblock.of(c); if (ub == character.unicodeblock.cjk_unified_ideographs || ub == character.unicodeblock.cjk_compatibility_ideographs || ub == character.unicodeblock.cjk_unified_ideographs_extension_a || ub == character.unicodeblock.general_punctuation || ub == character.unicodeblock.cjk_symbols_and_punctuation || ub == character.unicodeblock.halfwidth_and_fullwidth_forms) { return true; } return false; } /** * 校验string是否全是中文 * * @param name * 被校验的字符串 * @return true代表全是汉字 */ public static boolean checknamechese(string name) { boolean res = true; char[] ctemp = name.tochararray(); for (int i = 0; i < name.length(); i++) { if (!ischinese(ctemp[i])) { res = false; break; } } return res; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: 分享CentOS下MySQL最新版本5.6.13源码安装过程
下一篇: 第一个asp.net程序
推荐阅读
-
Character.UnicodeBlock中cjk的说明详解
-
java使用jna调用c#中dll的方法详解
-
servlet实现文件下载的步骤及说明详解
-
spring boot中的properties参数配置详解
-
Spring Boot中lombok的安装与使用详解
-
详解Android中ViewPager的PagerTabStrip子控件的用法
-
详解Android App中创建ViewPager组件的方法
-
详解Android App中ViewPager使用PagerAdapter的方法
-
Python编程对列表中字典元素进行排序的方法详解
-
Java 中HttpURLConnection附件上传的实例详解