Spring Boot之Validation自定义实现
起因
项目里面有一个要求是: xx字段只能输入15个中文字符,30个英文字符
一开始我使用了@Pattern正则表达式匹配
@Pattern (regexp = "[\\u4E00-\\u9FA5]{0,15}|[a-zA-Z]{0,30}", message = "歌名最多写15个中文字符,英文字符30个")
但是测试了一下,当同时含有中文和英文的时候,这个正则不符合我的要求
于是我写了以下工具类来校验
public static boolean songNameCheck (String text) {
//中文数量
int Chinesecount = 0;
String regEx = "[\\u4e00-\\u9fa5]";
Pattern p = Pattern.compile (regEx);
Matcher m = p.matcher (text);
int len = m.groupCount ();
while (m.find ()) {
for (int i =