String s = "ab#cd#ef#gh#";
String regex = "#";
char [] sChar = s.toCharArray();
char [] regexChar = regex.toCharArray();
int count = 1;
for (int i = 0; i < regexChar.length; i++){
for (int j = 0; j < sChar.length; j++){
if (regexChar [i] == sChar[j]){
count += 2;
}
}
}
String [] splitS = new String [count];
String temp;
for (int k = 0; k < count; k++){
temp = "";
for (int i = 0; i < regexChar.length; i++){
for (int j = 0; j < sChar.length; j++){
if (regexChar[i] == sChar[j]){
temp = Character.toString(regexChar[i]);
}
else {
temp = temp + Character.toString(sChar[j]);
}
}
}
splitS[k] = temp;
}
这是我的代码,但它给了我splitS[#,#,#,#,#,#,#,#]
。但它应该是splitS[ab,#,cd,#,ef,#,gh,#]
。谁能告诉我为什么这样做?不使用String.split()分割一个字符串 - 并返回分隔符
by regexChar你的意思是分割? – damienix 2014-10-01 20:33:14
'regex'会比1个字符长吗? – jedwards 2014-10-01 20:33:35
为什么不使用'StringTokenizer'? – 2014-10-01 20:33:55