假设我想分裂,
String line = "ABCDEFG";
到
{"ABCD","EFG"}
我会这样做,
String[] alpha = line.split('D');
但是给了我,
{"ABC","EFG"}
注意到缺少"D",如何在保留字符的同时拆分它?
我做了一个函数来做你想做的事。
public static String[] splitWise(String line,char a){
String[] res= {"",""};
Boolean added=false;
for(int i=0;i<line.length()-1;i++)
{
if(line.charAt(i)==a)
{
//change next line if you want the element you split in the second element of the array
res[0]+= line.charAt(i);
added=true;
}else if(!added){
res[0] += line.charAt(i);
}else
res[1] += line.charAt(i);
}
return res;
}
我认为这就是你想要的。你只需要像这样调用函数:
String[] alpha = splitWise(line,'D');