str="北京-海淀区 3-4年经验 本科 招2人 03-25发布"
原因:正则、各种函数均无法分隔
方案:通过hashCode值分隔,并存入数组中
//字符串以空格分隔
public interface StringToList {
static String[] fun(String str){//str="北京-海淀区 3-4年经验 本科 招2人 03-25发布"
String[] split=str.split( "\\s*" );
for (int i=0,j=1; i <split.length ; i++) {
while (split[j].hashCode()!=160&&j<split.length-1){//以hashcode判断空格,不是空格原位连接
split[i]=split[i]+split[j];
split[j]="";
j++;
}
while (split[j].hashCode()==160&&j<split.length){//是空格,向下移动
j++;
}
if(j==split.length-1)//填补最后一个集合值
{
split[i]=split[i]+split[j];
while (i<split.length-1)//释放数组空间
split[++i]=null;
break;
}
}
return split;
}
}