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