
有数组lista{"S0-E1","S0-E11","S0-E31"},然后listb就是上面图片描绘的数据。需要把listb里面第二个" - " 符号前的字段跟lista里面字段相同的数据分成一个组,就是lista里面有多少种数据。就把listb分成多少组(条件就是前头 " - "字段相同)

------解决方案--------------------
List<List<String>>listab = new ArrayList<List<String>>();
for(String a:lista){
listab.add(new ArrayList<String>());
}
for(String b:listb){
for(String a:lista){
int i =0;
if(b.contains(a)){
listab.get(i).add(b);
break;
}
i++;
}
}
------解决方案--------------------
var lista = ['S0-E1','S0-E11','S0-E31'];
var listb = ['S0-E1-NA','S0-E1-ST','S0-E11-NA','S0-E11-ST','S0-E31-NA','S0-E31-ST'];
var rs = new Object();
//初始化
for(var i = 0; i < lista.length; i++) {
rs[lista[i]]=[];
}
//分组
for (var i = 0; i < listb.length; i++) {
var key = listb[i].substr(0,listb[i].lastIndexOf('-'));
rs[key].push(listb[i]);
}
//结果输出
for (var key in rs) {
for(var i = 0; i < rs[key].length; i++) {//rs[key]为每组数据
alert(rs[key][i]);
}
}