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());
		}
	}
}