java正则表达式,我想要一个java的能够检测中文姓名的简单方法,下面是我自己尝试的,但是永远返回了假

static boolean ChineseNameTest(String name) {
if (!name.matches("[u4e00-u9fa5]{2,4}")) {
System.out.println("只能输入2到4个汉字");
return false;
}else return true;
}
这个问题应该能造福很多朋友吧,代表所有初学者感谢参与回答的朋友们

static boolean ChineseNameTest(String name) {
if (!name.matches("[\u4e00-\u9fa5]{2,4}")) {
System.out.println("只能输入2到4个汉字");
return false;
}else return true;
}

希望对你有帮助
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-08-28
加条斜杠就可以了
static boolean ChineseNameTest(String name) {
if (!name.matches("[u4E00-\u9FA5]{2,4}")) {
System.out.println("只能输入2到4个汉字");
return false;
}else return true;
}
第2个回答  2012-08-28
^[\u4e00-\u9fa5]{2,4}$
第3个回答  2012-08-28
楼上几位说的不错 就是忘了因为\在java中也是转义符 所以需要\\才行