只能输入中文
/** * 22.验证汉字 * 表达式 ^[u4e00-u9fa5]{0,}$ * 描述 只能汉字 * 匹配的例子 清清月儿 */ @Test public void a1() { Scanner sc = new Scanner(System.in); String input = sc.nextLine(); String regex = "^[u4e00-u9fa5]*$"; Matcher m = Pattern.compile(regex).matcher(input); System.out.println(m.find()); sc.close(); }
PS:下面看下Java中要匹配中文的正则表达式可以有两种写法:一是使用unicode中文码;二是直接使用汉字字符;
例:
(1)String str = "晴";
String regexStr = "[u4E00-u9FA5]"; str.regex(regexStr);
(2)String str = "晴";
String regexStr = "[一-龥]"; str.regex(regexStr);
说明:
(1)现在网上大多数用于判断中文字符的是u4E00-u9FA5这个范围是只是“中日韩统一表意文字”这个区间,但这不是全部,如果要全部包含,则还要他们的扩展集、部首、象形字、注间字母等等; 具体可以查看unicode中简体中文编码
(2) "[一-龥]";是查出的u4E00-u9FA5对应的中文。具体uniocde2中文进行查询
以上所述是小编给大家介绍的Java使用正则表达式(regex)匹配中文实例代码,希望对大家有所帮助,如果大家有任何疑问请给我们留言,小编会及时回复大家的。在此也非常感谢大家对查字典教程网的支持!