我从购物车javascript到jsp获取购物车项目和购物车价格,然后将其从jsp传输到servlet,如下所示:
String a= request.getParameter("cartitems");//but it prints like Jan-2019Feb-2019March-2019
String b=request.getParameter("cartprice");//prints like $100,$200,$400
我需要将数据存储在数据库中,如下所示:
Cart Price
Jan-2019 $100
Feb-2019 $200
March-2019 $400
我正在尝试分隔此Jan-2019Feb-2019March-2019,以便可以将其存储在我的表中,但无法这样做,Jan-2019Feb-2019March-2019不需要用日期格式分隔,可以如果可能,请使用任何合适的正则表达式分隔。
我试图按如下方式分隔字符串a,但它不起作用。
String[] result = a.split(",");
out.println(Arrays.toString(result));// prints [June-2019March-2019]
如何在我的数据库表中存储上述数据,请帮忙!提前非常感谢!
答案 0 :(得分:1)
String cartItemsParameter= request.getParameter("cartitems");
findRexExpList(cartItemParameter, "\\D+\\d+");
方法代码:
private static List<String> findRexExpList(String text, String regExp) {
List<String> result = new ArrayList<>();
Pattern pattern = Pattern.compile(regExp);
Matcher matcher = pattern.matcher(text);
while (matcher.find()) {
String group = matcher.group();
result.add(group);
}
return result;
}
List<String> carts = findRexExpList(cartItemParameter, "\\D+\\d+");
String[] cartPrices = request.getParameter("cartprice").split(",");
for(int i=0; i<cartPrices.length; i++){
String cart = carts.get(i);
String price = cartPrices[i];
//insert cart and price
}