从JDK1.4以后
![](/icons/35534dou.gif)
String类中新增了split思路方法来实现
![](/icons/35534zifu.gif)
串
![](/icons/35534de.gif)
分割
![](/icons/35534dou.gif)
但是在J2ME中却没有该思路方法(MIDP2.0中也没有实现)
![](/icons/35534dou.gif)
但是在实际使用过程中
![](/icons/35534dou.gif)
有些时候
![](/icons/35534de.gif)
确要用到这种操作
![](/icons/35534dou.gif)
这里将我以前实现
![](/icons/35534de.gif)
![](/icons/35534yi.gif)
段代码和大家共享:
/*** 分割
![](/icons/35534zifu.gif)
串
![](/icons/35534dou.gif)
原理:检测
![](/icons/35534zifu.gif)
串中
![](/icons/35534de.gif)
分割
![](/icons/35534zifu.gif)
串
![](/icons/35534dou.gif)
然后取子串* @param original 需要分割
![](/icons/35534de.gif)
![](/icons/35534zifu.gif)
串* @paran regex 分割
![](/icons/35534zifu.gif)
串* @
![](/icons/35534return.gif)
分割后生成
![](/icons/35534de.gif)
![](/icons/35534zifu.gif)
串
![](/icons/35534shuzu.gif)
*/private
![](/icons/35534static.gif)
String
![](/icons/35534zhk2.gif)
split(String original,String regex){//取子串
![](/icons/35534de.gif)
起始位置
![](/icons/35534int.gif)
startIndex = 0;//将结果数据先放入Vector中Vector v =
![](/icons/35534new.gif)
Vector
![](/icons/35534kh.gif)
;//返回
![](/icons/35534de.gif)
结果
![](/icons/35534zifu.gif)
串
![](/icons/35534shuzu.gif)
String
![](/icons/35534zhk2.gif)
str = null;//存储取子串时起始位置
![](/icons/35534int.gif)
index = 0;//获得匹配子串
![](/icons/35534de.gif)
位置startIndex = original.indexOf(regex); //
![](/icons/35534System.gif)
.out.pr
![](/icons/35534int.gif)
ln(\"0\" + startIndex); //如果起始
![](/icons/35534zifu.gif)
串
![](/icons/35534de.gif)
位置小于
![](/icons/35534zifu.gif)
串
![](/icons/35534de.gif)
长度
![](/icons/35534dou.gif)
则证明没有取到
![](/icons/35534zifu.gif)
串末尾
![](/icons/35534dou2.gif)
//-1代表取到了末尾while(startIndex < original.length
![](/icons/35534kh.gif)
&& startIndex != -1){String temp = original.sub
![](/icons/35534string.gif)
(index,startIndex);
![](/icons/35534System.gif)
.out.pr
![](/icons/35534int.gif)
ln(\" \" + startIndex);//取子串v.addElement(temp);//设置取子串
![](/icons/35534de.gif)
起始位置index = startIndex + regex.length
![](/icons/35534kh.gif)
;//获得匹配子串
![](/icons/35534de.gif)
位置startIndex = original.indexOf(regex,startIndex + regex.length
![](/icons/35534kh.gif)
);}//取结束
![](/icons/35534de.gif)
子串v.addElement(original.sub
![](/icons/35534string.gif)
(index + 1 - regex.length
![](/icons/35534kh.gif)
));//将Vector对象转换成
![](/icons/35534shuzu.gif)
str =
![](/icons/35534new.gif)
String[v.size
![](/icons/35534kh.gif)
];for(
![](/icons/35534int.gif)
i=0;i {str[i] = (String)v.elementAt(i);}//返回生成
![](/icons/35534de.gif)
![](/icons/35534shuzu.gif)
![](/icons/35534return.gif)
str;}