Pattern Matching Json in Java - HaymonEdmur/DockerConfiguration GitHub Wiki
package com.cypher.parser;
import java.io.Console;
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class Test01 {
public static void main(String[] args) {
String input = "{cat: \"rat@rat\",cat: \"rat ++ mat\",cat: \"rat ddd\\ fat\"}";
Pattern pattern = Pattern.compile("(\\w+:\\s+\"[^\"]*\")");
boolean found = false;
StringBuffer buf = new StringBuffer();
Matcher matcher = pattern.matcher(input);
System.out.println(input);
buf.append("{");
while (matcher.find()) {
System.out.println(matcher.group());
found = true;
String[] token = input.substring(matcher.start(),matcher.end()).split(":\\s+");
buf.append("\""+token[0]+"\": "+token[1]+",");
}
buf.setCharAt(buf.length()-1,'}');
if (!found) {
System.out.println("No match found!");
} else {
System.out.println(buf.toString());
}
}
}