67,513
社区成员
发帖
与我相关
我的任务
分享
HashMap<String, Integer> map = new HashMap<String, Integer>();
String str = "1PALLET,5PACKAGE,2PALLET,1PALLET,4BOX,4PACKAGE,1PALLET,1PACKAGE,28CARTON,5PALLET,10PACKAGE,4BOX,28CARTON";
Pattern reg = Pattern.compile("(\\d+)([^,\\n]+)");
Matcher m1 = reg.matcher(str);
while(m1.find()){
//System.out.println(m1.start() + ":" + m1.end());
int num = Integer.parseInt(m1.group(1));
String key = m1.group(2);
Integer tmp = map.put(key, num);
if(tmp != null)
map.put(key, num + tmp);
}
for (String key: map.keySet()) {
System.out.println(key + ":" + map.get(key));
}
输出结果:
CARTON:56
PACKAGE:20
BOX:8
PALLET:10