62,614
社区成员
发帖
与我相关
我的任务
分享
import java.util.regex.*;
public class MyRegex2 {
public static void main(String[] args) {
String s="中国china2009";
/*
* 匹配中文字符的正则表达式: [\u4e00-\u9fa5]
* [a-zA-Z]*:表示英文字母有0个或多个
* \\d*:表示数字有0个或多个
*/
Matcher m=Pattern.compile("([\u4e00-\u9fa5]*)([a-zA-Z]*)(\\d*)").matcher(s);
if(m.find()){
//第一对小括号表示第一组,第二对小括号表示第二组...
System.out.println(m.group(1));
System.out.println(m.group(2));
System.out.println(m.group(3));
}
}
}
public class Test4 {
public static void main(String[] args) {
String str = "中国china2009";
String[] strs = str.split("(?<!^)(?:(?<![a-zA-Z])(?=[a-zA-Z])|(?<![0-9])(?=[0-9])|(?<![\u4e00-\u9faf])(?=[\u4e00-\u9faf]))");
for(int i = 0; i < strs.length; i++) {
System.out.println(strs[i]);
}
}
}
public class Test{
public static void main(String[] args){
String a = "中国china2009";
String[] strs = a.split("");
String hanzi = "";
String zimu = "";
String shuzi = "";
for(int i = 0;i<strs.length;i++){
int c = strs[i].hashCode();
if((c>=97 && c<=122)||(c>=65 && c<=90)){
zimu = zimu+strs[i];
}else if(c>=48&&c<=57){
shuzi = shuzi + strs[i];
}else{
hanzi = hanzi + strs[i];
}
}
System.out.println(hanzi);
System.out.println(zimu);
System.out.println(shuzi);
}
}