刚刚编写的 实测好用 拷贝getlist和gettype两个方法 给getlist里传入你想要处理的字符串就可以了!!!
package test;
import java.util.ArrayList;
import java.util.List;
public class main {
public static void main(String[] args) {
// TODO Auto-generated method stub
String k = "sdf345+.1dfa";
//data就是你想要的结果 方法就是getlist(String)
List
}
public static List
int beforeCharTypeFlg=0;
int nowCharTypeFlg=0;
String subString = "";
List
for (int i=0;i
nowCharTypeFlg = gettype(nowchar);
if(subString.equals("")){
subString = nowchar;
}else{
if(nowCharTypeFlg == beforeCharTypeFlg){
subString += nowchar;
}else{
String temp = subString;
data.add(temp);
subString = nowchar;
System.out.println(temp);
}
if(i == str.length()-1){
String temp = subString;
data.add(temp);
System.out.println(temp);
}
}
beforeCharTypeFlg = nowCharTypeFlg;
}
return data;
}
public static int gettype(String onechar){
String letter_reg = "[a-zA-Z]";
String number_reg = "[0-9]";
if(onechar.matches(letter_reg)){
return 0;
};
if(onechar.matches(number_reg)){
return 1;
};
return 2;
}
}
public class StringSplit {
public static void main(String[] args) {
String sourceStr = "1,2,3,4,5";
String[] sourceStrArray = sourceStr.split(",");
for (int i = 0; i < sourceStrArray.length; i++) {
System.out.println(sourceStrArray[i]);
}
// 最多分割出3个字符串
int maxSplit = 3;
sourceStrArray = sourceStr.split(",", maxSplit);
for (int i = 0; i < sourceStrArray.length; i++) {
System.out.println(sourceStrArray[i]);
}
}
}
判断字符是否是数字