String str = "我你la123BBcc你你";
String reg_character = "([A-Z]*)([a-z]*)([0-9]*)([\u4E00-\u9FA5]*)";
Pattern p =Pattern.compile(reg_character);
Matcher m = p.matcher(str);
StringBuilder uppercharacter = new StringBuilder();
StringBuilder lowercharacter = new StringBuilder();
StringBuilder number = new StringBuilder();
StringBuilder chinese = new StringBuilder();
while(m.find()){
// if(!"".equals(m.group(0).trim())){
// System.out.println("" + m.group(0));
// }
if(!"".equals(m.group(1).trim())){
uppercharacter.append(m.group(1));
}
if(!"".equals(m.group(2).trim())){
lowercharacter.append(m.group(2));
}
if(!"".equals(m.group(3).trim())){
number.append(m.group(3));
}
if(!"".equals(m.group(4).trim())){
chinese.append(m.group(4));
}
}
System.out.println("这是大写字母:" + uppercharacter);
System.out.println("这是小写字母:" + lowercharacter);
System.out.println("这是数字:" + number);
System.out.println("这是汉字:" + chinese);
输出结果:
这是大写字母:BB
这是小写字母:lacc
这是数字:123
这是汉字:我你你你