java正则表达式匹配数字、字母、下划线、汉字

最近在写一个安卓注册模块,用户名是由数字、字母、下划线、汉字组成
然后就发现正则表达式非常好用。
直接上代码了:

String str="java_正则Ja_表达式";
        Pattern pt=Pattern.compile("[\u4e00-\u9fa5\\w]+");
        Matcher mt=pt.matcher(str);
        if(mt.matches()){
            System.out.println("yes");
        }else{
            System.out.println("No");
        }

测试输出结果为yes
解释一下这个正则表达式:
\u4e00-\u9fa5 代表中文
\w代表英文、数字和“_”
[ ]代表其中的任意字符,
+代表至少出现一次。

你可能感兴趣的:(java)