<span style="font-size:18px;"><strong>Java 字符串分割的几种方法</strong></span>
/**
* StringTokenizer 分割
*
* @param str
* @param split
* @param len
* 分割后的数组长度
* @return
*/
private static String[] tokenSplit(String str, String split, int len) {
String[] arrs = new String[len];
StringTokenizer token = new StringTokenizer(str, split);
int i = 0;
while (token.hasMoreElements()) {
arrs[i] = token.nextToken();
i++;
}
return arrs;
}
/**
* 正则表达式 分割
*
* @param str
* @param split
* @return
*/
private static String[] pattenrnSplit(String str, String split) {
Pattern pat = Pattern.compile(split);
String[] split2 = pat.split(str);
return split2;
}
/**
* split 分割
*
* @param str
* @param split
* @return
*/
private static String[] StringSplit(String str, String split) {
String[] strs = str.split(split);
return strs;
}
/**
* substring 分割
*
* @param str
* @param split
* @param splitNum
* <p>
* splitNum = split的个数
* </p>
* @return
*/
private static String[] subStringSplit(String str, String split,
int splitNum) {
String[] arrs = new String[splitNum + 1];
int index = 0;
int k = 0;
int i = 0;
boolean isStr = true;
while (isStr) {
if (str.contains(split)) {
if (split.equals(str.substring(i, i + 1))) {
if (k == 0) {
arrs[index] = str.substring(0, i);
str = str.substring(i + 1, str.length());
} else {
arrs[index] = str.substring(0, k);
str = str.substring(k + 1, str.length());
}
index++;
k = i;
i = 0;
}
} else {
arrs[splitNum] = str;
isStr = false;
}
i++;
}
return arrs;
}
03-10
924
