求判断中文字符串方法 我需要一个字符串是否为纯中文字符。java这个对编码格式有要求吗?? UTF-8 和GBK 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 应该没有要求,JAVA统一用UNICODE编码,两个字节数组表示一个汉字。 用这则表达式。你是要在页面验证还是在JAVA代码里? 我对正则表达式没有研究,刚才小试了一下,貌似能用。希望高手提出更好的 //JAVA使用的字符集是 Unicode,可以说是包含了世界所有国家的常用字符 String str = "中方法国"; Pattern p = Pattern.compile("[\u4E00-\u9FA5]+"); Matcher m = p.matcher(str); System.out.println(m.matches());// 打印结果 true str = "aa附件"; m = p.matcher(str); System.out.println(m.matches());// 打印结果 false 这样也可以,不过这样比 [\u4E00-\u9FA5]+ 要好一些,如果 Unicode 字符集在 9FA6 上增加了一个汉字的话,这个表达式就无效了,但是下面这个还是可以判断的。String str = ...;boolean isChinese = str.matches("[\\p{InCJK Unified Ideographs}&&\\P{Cn}]]+");\\p{InCJK Unified Ideographs} 表示 Unicode 块为 CJK Unified Ideographs 的字符,根据 Unicode 规范这个块的范围为 U+4E00~U+9FFF\\P{Cn} 表示已经被定义过的字符,而不是空码注意上面两个“p”的大小写!两者使用 && 表示在 4E00~9FFF 之间所有已经被定义过的字符 \\p 表示包含,\\P 表示不包含\\p{Cn} 的意思为 Unicode 中未被定义字符的编码,那使用 \\P{Cn} 就表示 Unicode 中已经被定义字符的编码了,呵呵。像 Cn 这种称为 Unicode 属性,是由 Unicode 定义的,可以在这里找到所有的 Unicode 属性http://www.unicode.org/reports/tr18/ 1.2 节中。不过 Java 中并不是能支持所有的 Unicode 属性。具体的支持可以从 Pattern$categoryNames 类中找到,也可以在 Character API DOC 的常量字段中找到。 学习了MARK下回复内容太短了!回复内容太短了!回复内容太短了!回复内容太短了!回复内容太短了! 3楼的执行没问题 但是需要引用个包 import java.util.regex.*;5楼的执行有问题 字符串全是中文也是false 急!!! 给出一组英文单词,找出其中出现频率最高的3个(JAVA)的代码 java的GridBagLayout的使用情况 ArrayList格式化输出到txt中 分析一段添加水印的代码,送上我所有的分!! 内部类的特性全集! java 学习资源 《java实例技术手册》的疑问??? 如何屏蔽Windows的快捷键? 如何让PopupMenu向上弹出?100分相送 请问如何用java调用C的Dll库 JAVA问题 时间紧急! 求教高人一个java bug的问题
String str = "中方法国";
Pattern p = Pattern.compile("[\u4E00-\u9FA5]+");
Matcher m = p.matcher(str);
System.out.println(m.matches());// 打印结果 true str = "aa附件";
m = p.matcher(str);
System.out.println(m.matches());// 打印结果 false
boolean isChinese = str.matches("[\\p{InCJK Unified Ideographs}&&\\P{Cn}]]+");\\p{InCJK Unified Ideographs} 表示 Unicode 块为 CJK Unified Ideographs 的字符,根据 Unicode 规范这个块的范围为 U+4E00~U+9FFF
\\P{Cn} 表示已经被定义过的字符,而不是空码注意上面两个“p”的大小写!两者使用 && 表示在 4E00~9FFF 之间所有已经被定义过的字符
http://www.unicode.org/reports/tr18/ 1.2 节中。不过 Java 中并不是能支持所有的 Unicode 属性。具体的支持可以从 Pattern$categoryNames 类中找到,也可以在 Character API DOC 的常量字段中找到。
回复内容太短了!回复内容太短了!回复内容太短了!回复内容太短了!回复内容太短了!