Java使用正则表达式(regex)匹配中文实例代码
程序员文章站
2024-03-09 12:57:15
只能输入中文
/**
* 22.验证汉字
* 表达式 ^[\u4e00-\u9fa5]{0,}$
* 描述 只能汉字
* 匹配的例子 清清月儿...
只能输入中文
/** * 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)匹配中文实例代码,希望对大家有所帮助
上一篇: Java对数组实现选择排序算法的实例详解