import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(\\[[\\s\\n\\r]*\\{|\\},[\\s\\n\\r]+\\{|\\}[\\s\\n\\r]*\\])";
final String string = "[\n"
+ " {\n"
+ " \"Assigned to\": \"Jones, Francis\",\n"
+ " \"Cost\": 3,\n"
+ " \"Created date\": \"2024-02-28 12:52:18\",\n"
+ " \"Extraction date\": \"2024-03-02 13:51:00\",\n"
+ " \"ID\": 12345,\n"
+ " \"Initial Cost\": 3,\n"
+ " \"Location\": \"Sites\",\n"
+ " \"Path\": \"Sites\\\\FY1\\\\S3\",\n"
+ " \"Priority\": 1,\n"
+ " \"State\": \"In Progress\",\n"
+ " \"Status Change date\": \"2024-03-05 16:33:23\",\n"
+ " \"Tags\": \"Europe; Finance\",\n"
+ " \"Title\": \"Ensure correct routing of orders\",\n"
+ " \"Updated date\": \"2024-03-05 16:33:23\",\n"
+ " \"Warranty\": false,\n"
+ " \"Wave Quarter\": \"Q2 22\",\n"
+ " \"Work Item Type\": \"Request\"\n"
+ " },\n"
+ " {\n"
+ " \"Assigned to\": \"Jones, Francis\",\n"
+ " \"Cost\": 3,\n"
+ " \"Created date\": \"2024-02-28 18:59:18\",\n"
+ " \"Extraction date\": \"2024-03-05 16:31:00\",\n"
+ " \"ID\": 12345,\n"
+ " \"Initial Cost\": 3,\n"
+ " \"Location\": \"Sites\",\n"
+ " \"Path\": \"Sites\\\\FY1\\\\S3\",\n"
+ " \"Priority\": 1,\n"
+ " \"State\": \"In Progress\",\n"
+ " \"Status Change date\": \"2024-03-05 16:33:23\",\n"
+ " \"Tags\": \"Europe; Finance\",\n"
+ " \"Title\": \"Ensure correct routing of orders\",\n"
+ " \"Updated date\": \"2024-03-05 16:33:23\",\n"
+ " \"Warranty\": false,\n"
+ " \"Wave Quarter\": \"Q2 22\",\n"
+ " \"Work Item Type\": \"Request\"\n"
+ " },\n"
+ " {\n"
+ " \"Assigned to\": \"Jones, Francis\",\n"
+ " \"Cost\": 3,\n"
+ " \"Created date\": \"2023-01-28 18:59:18\",\n"
+ " \"Extraction date\": \"2023-02-05 16:31:00\",\n"
+ " \"ID\": 12345,\n"
+ " \"Initial Cost\": 3,\n"
+ " \"Location\": \"Sites\",\n"
+ " \"Path\": \"Sites\\\\FY1\\\\S3\",\n"
+ " \"Priority\": 1,\n"
+ " \"State\": \"In Progress\",\n"
+ " \"Status Change date\": \"2023-02-05 16:33:23\",\n"
+ " \"Tags\": \"Europe; Finance\",\n"
+ " \"Title\": \"Ensure correct routing of orders\",\n"
+ " \"Updated date\": \"2024-03-05 16:33:23\",\n"
+ " \"Warranty\": false,\n"
+ " \"Wave Quarter\": \"Q2 22\",\n"
+ " \"Work Item Type\": \"Request\"\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