简体   繁体   中英

Extract json data from given string

I am having a string something like this :

a.b.c.d.e = 
{"altImages":2,"available":1,"availableColorCount":3};

Now I only need to fetch :

{"altImages":2,"available":1,"availableColorCount":3}

What should be regex expression to extract that part from given string. Please help

My Try :

(?smi)a.b.c.d\\(.*\"e\"=(.*?)\\}\\);.*

But its not helping around.

尝试这个:

.+\s*=\s*({(?:.+:.+,?)+})(?=;)

You can use something like:

.*?\n(.*);

Here is the version with named groups:

String text = "a.b.c.d.e = \n{\"altImages\":2,\"available\":1,\"availableColorCount\":3};";
Pattern pattern = Pattern.compile(".*?\n(?<JSON>.*);");
Matcher matcher = pattern.matcher(text);

if (matcher.matches()) {
    System.out.println(matcher.group("JSON"));
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM