从jdk1.4以后,string类中新增了split方法来实现字符串的分割,但是在j2me中却没有该方法(midp2.0中也没有实现),但是在实际使用过程中,有些时候的确要用到这种操作,这里将我以前实现的一段代码和大家共享:
/**
* 分割字符串,原理:检测字符串中的分割字符串,然后取子串
* @param original 需要分割的字符串
* @paran regex 分割字符串
* @return 分割后生成的字符串数组
*/
private static string[] split(string original,string regex)
{
//取子串的起始位置
int startindex = 0;
//将结果数据先放入vector中
vector v = new vector();
//返回的结果字符串数组
string[] str = null;
//存储取子串时起始位置
int index = 0;
//获得匹配子串的位置
startindex = original.indexof(regex);
//system.out.println("0" + startindex);
//如果起始字符串的位置小于字符串的长度,则证明没有取到字符串末尾。
//-1代表取到了末尾
while(startindex < original.length() && startindex != -1)
{
string temp = original.substring(index,startindex);
system.out.println(" " + startindex);
//取子串
v.addelement(temp);
//设置取子串的起始位置
index = startindex + regex.length();
//获得匹配子串的位置
startindex = original.indexof(regex,startindex + regex.length());
}
//取结束的子串
v.addelement(original.substring(index + 1 - regex.length()));
//将vector对象转换成数组
str = new string[v.size()];
for(int i=0;i
{
str[i] = (string)v.elementat(i);
}
//返回生成的数组
return str;
}
闽公网安备 35060202000074号