永发信息网

java字符串截取

答案:6  悬赏:50  手机版
解决时间 2021-03-24 04:50
java字符串截取
最佳答案
如果字符串就这个固定格式,可用以下代码:
//使用两个Vector容器来装载,可随时增加长度
Vector sort1 = new Vector();
Vector sort2 = new Vector();
String str = "sort1[]=001&sort2[]=003&sort1[]=005&sort2[]=002&sort1[]=004&sort2[]=006";
//先按sort类似拆分
String[] all = str.split("&");
for(int i = 0;i< all.length;i++) {
if(all[i].startsWith("sort1")) {
sort1.add(all[i].substring(all[i].indexOf("=")+1, all[i].length()));
}else{
sort2.add(all[i].substring(all[i].indexOf("=")+1, all[i].length()));
}
}
Iterator it1 = sort1.iterator();
System.out.println("sort1 Out:");
while(it1.hasNext()) {
System.out.println(it1.next().toString());
}
System.out.println("sort2 Out:");
Iterator it2 = sort2.iterator();
while(it2.hasNext()) {
System.out.println(it2.next().toString());
}
全部回答
用StringTokenizer取以&为分隔符的字符串数据(具体用法查下JDK,有助于提高)
在里面遍历取字符串值的时候用String类的subString()方法取最后3位,并subString()判断前面是sort1还是sort2,从而放到不同的数组中。
这个程序是通过先把字符串转换为byte 数组然后根据你要截取的字符串长度截取字符串的。 byte bt[] = str.getBytes(); //转化为字节数组。 if(bt[
String str = "sort1[]=001&sort1[]=003&sort1[]=005&sort2[]=002&sort2[]=004&sort2[]=006";
String[] s = str.split("&");
String sort1="";
String sort2="";
for(String item : s){
String temp = item.substring(0,item.indexOf("["));
if("sort1".equals(temp)){
sort1+=item.substring(item.indexOf("=")+1,item.length())+"&";
}else if("sort2".equals(temp)){
sort2+=item.substring(item.indexOf("=")+1,item.length())+"&";
}
}
String[] s1=sort1.split("&"),s2 = sort2.split("&");
//------输出结果------
System.out.print("sort1:");
for(String i : s1){
System.out.print(i+"、");
}
System.out.println();
System.out.print("sort2:");
for(String i : s2){
System.out.print(i+"、");
}
public static void main(String[] args) {

String str = "sort1[]=001&sort2[]=003&sort1[]=005&sort2[]=002&sort1[]=004&sort2[]=006";
String[] strs = str.split("&");
List sort1List = new ArrayList();
List sort2List = new ArrayList();
for(int i=0;i Map map = new HashMap();
String[] items = strs[i].split("=");
String key = items[0].substring(0, items[0].length()-2);
String value = items[1];
map.put(key, value);
//判断是否是sort1
if("sort1".equals(key)){
sort1List.add(map);
}else{
sort2List.add(map);
}

}
//输出sort1
for(int i=0;i System.out.println(sort1List.get(i));
}
//输出sort2
for(int i=0;i System.out.println(sort2List.get(i));
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
锻炼中恢复体力
依次填入下面横线上的词语,恰当的一项是①为
想买辆二手车,看中大众POLO2003款1.4舒适
购房补充协议怎么写
慢岗怎么去啊,有知道地址的么
铝线载流量多大
求一本网游小说名字,猪脚游戏里的名字叫石头
单选题My parents kept their&nbs
差是部首是什么,氏的偏旁是什么
请问师傅门新手开车上高速靠哪边走?
有没有狗的传人?
单选题Christineisacompanymanagernow,b
言行力求合乎中庸什么意思
金陵中学实验小学在哪里啊,我有事要去这个地
黑米,韭菜籽,黑豆,黑芝麻,黑枣,打粉冲开
推荐资讯
车友二手车地址在哪,我要去那里办事
女士55年出生和男士63年出生能相配吗
1977年农历1月26出生的人,命运如何,有大财
我在大一,我男朋友是高二的,和我是一个高中
青海省中医院骨科的郭焕章大夫医术如何?麻烦
企赢装饰建材总汇地址在什么地方,想过去办事
做四维彩超过程多少分钟
开店老与邻居吵架怎办
南阳有直达茂名的火车吗?
经常吃燕麦片能减肥么?能让皮肤变白么?
想和离的理解
堪称中的堪是什么意思
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?