import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "Hub\\.config\\.set\\('\\w*',\\s*(\\{[\\s\\S]*\\})";
final String string = "Hub = {};\n"
+ "Hub.config = {\n"
+ " config: {},\n"
+ " get: function(key) {\n"
+ " if (key in this.config) {\n"
+ " return this.config[key];\n"
+ " } else {\n"
+ " return null;\n"
+ " }\n"
+ " },\n"
+ " set: function(key, val) {\n"
+ " this.config[key] = val;\n"
+ " }\n"
+ "};\n\n"
+ "Hub.config.set('sku', {\n"
+ " valCartInfo : {\n"
+ " itemId : '576938415361',\n"
+ " cartUrl: '//cart.mangolane.com/cart.htm'\n"
+ " },\n"
+ " apiRelateMarket : '//tui.mangolane.com/recommend?appid=16&count=4&itemid=576938415361',\n"
+ " apiAddCart : '//cart.mangolane.com/add_cart_item.htm?item_id=576938415361',\n"
+ " apiInsurance : '',\n"
+ " wholeSibUrl : '//detailskip.mangolane.com/service/getData/1/p1/item/detail/sib.htm?itemId=576938415361&sellerId=499095250&modules=dynStock,qrcode,viewer,price,duty,xmpPromotion,delivery,upp,activity,fqg,zjys,amountRestriction,couponActivity,soldQuantity,page,originalPrice,tradeContract',\n"
+ " areaLimit : '',\n"
+ " bigGroupUrl : '',\n"
+ " valPostFee : '',\n"
+ " coupon : {\n"
+ " couponApi : '//detailskip.mangolane.com/json/activity.htm?itemId=576938415361&sellerId=499095250',\n"
+ " couponWidgetDomain: '//assets.mgcdn.com',\n"
+ " cbUrl : '/cross.htm?type=weibo'\n"
+ " },\n"
+ " valItemInfo : {\n\n"
+ " defSelected: -1,\n"
+ " skuMap : {\";20549:103189693;1627207:811754571;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4301611864655\",\"oversold\":false},\n"
+ " \";20549:59280855;1627207:412796441;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4432149803707\",\"oversold\":false},\n"
+ " \";20549:59280855;1627207:196576508;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4018119863100\",\"oversold\":false},\n"
+ " \";20549:72380707;1627207:28341;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4166690818570\",\"oversold\":false},\n"
+ " \";20549:418624880;1627207:28341;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4166690818566\",\"oversold\":false},\n"
+ " \";20549:418624880;1627207:196576508;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4018119863098\",\"oversold\":false},\n"
+ " \";20549:72380707;1627207:3224419;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4166690818571\",\"oversold\":false},\n"
+ " \";20549:147478970;1627207:196576508;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4018119863094\",\"oversold\":false},\n"
+ " \";20549:72380707;1627207:384366805;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4432149803708\",\"oversold\":false},\n"
+ " \";20549:296172561;1627207:811754571;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4301611864659\",\"oversold\":false},\n"
+ " \";20549:72380707;1627207:1150336209;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4301611864664\",\"oversold\":false},\n"
+ " \";20549:147478970;1627207:93586002;\":{\"price\":\"528.00\",\"stock\":\"2\",\"skuId\":\"4018119863095\",\"oversold\":false}}\n"
+ " ,propertyMemoMap: {\"1627207:811754571\":\"黑色单里(预售) 年后2.29发货\",\"1627207:93586002\":\"黑色加绒 现货\",\"1627207:412796441\":\"黑色(兔毛) 现货\",\"1627207:384366805\":\"米白色(兔毛) 现货\",\"1627207:3224419\":\"驼色 现货\",\"1627207:1150336209\":\"驼色单里(预售) 年后2.29发货\",\"1627207:28341\":\"黑色 现货\",\"1627207:196576508\":\"驼色加绒 现货\"}\n\n\n"
+ " }\n"
+ "});";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html