import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?smx)\n"
+ "(?(DEFINE)\n"
+ " (?<jsonObject>\n"
+ " \\{(?&jsonField)(?>,(?&jsonField))*+\\}|\n"
+ " \\{[[:space:]]*+\\}\n"
+ " )\n"
+ " (?<jsonArray>\n"
+ " \\[(?&jsonValue)(?>,(?&jsonValue))*+\\]|\n"
+ " \\[[[:space:]]*+\\]\n"
+ " )\n"
+ " (?<string>\n"
+ " \"\n"
+ " [^\"\\\\]*+\n"
+ " (?>\n"
+ " (?>\n"
+ " \\\\[\"\\\\\\/rntfb]|\n"
+ " \\\\u[[:xdigit:]]{4}\n"
+ " )++\n"
+ " [^\"\\\\]*+\n"
+ " )*+\n"
+ " \"\n"
+ " )\n"
+ " (?<number>\n"
+ " \\-?+\n"
+ " (?>\n"
+ " [1-9][[:digit:]]*+|\n"
+ " 0\n"
+ " )\n"
+ " (?>\\.[[:digit:]]++)?+\n"
+ " (?>[eE][\\+\\-]?+[[:digit:]]++)?+\n"
+ " )\n"
+ " (?<jsonValue>\n"
+ " [[:space:]]*+\n"
+ " (?>\n"
+ " (?&string)|\n"
+ " (?&number)|\n"
+ " (?&jsonObject)|\n"
+ " (?&jsonArray)|\n"
+ " false|\n"
+ " true|\n"
+ " null\n"
+ " )\n"
+ " [[:space:]]*+\n"
+ " )\n"
+ " (?<jsonField>\n"
+ " [[:space:]]*+(?&string)[[:space:]]*+\\:\n"
+ " (?&jsonValue)\n"
+ " )\n"
+ ")\n"
+ "^(?&jsonValue),\\n";
final String string = "null,\n"
+ " null,\n"
+ "null ,\n"
+ " null ,\n"
+ "false,\n"
+ " false,\n"
+ "false ,\n"
+ " false ,\n"
+ "true,\n"
+ " true,\n"
+ "true ,\n"
+ " true ,\n"
+ "123,\n"
+ "0,\n"
+ "-123,\n"
+ "-0,\n"
+ "123.0,\n"
+ "0.0,\n"
+ "-123.0,\n"
+ "-0.0,\n"
+ "123e1,\n"
+ "0e1,\n"
+ "-123e1,\n"
+ "-0e1,\n"
+ "123.0e1,\n"
+ "0.0e1,\n"
+ "-123.0e1,\n"
+ "-0.0e1,\n"
+ "123e+1,\n"
+ "0e+1,\n"
+ "-123e+1,\n"
+ "-0e+1,\n"
+ "123.0e+1,\n"
+ "0.0e+1,\n"
+ "-123.0e+1,\n"
+ "-0.0e+1,\n"
+ "123e-1,\n"
+ "0e-1,\n"
+ "-123e-1,\n"
+ "-0e-1,\n"
+ "123.0e-1,\n"
+ "0.0e-1,\n"
+ "-123.0e-1,\n"
+ "-0.0e-1,\n"
+ "123E1,\n"
+ "0E1,\n"
+ "-123E1,\n"
+ "-0E1,\n"
+ "123.0E1,\n"
+ "0.0E1,\n"
+ "-123.0E1,\n"
+ "-0.0E1,\n"
+ "123E+1,\n"
+ "0E+1,\n"
+ "-123E+1,\n"
+ "-0E+1,\n"
+ "123.0E+1,\n"
+ "0.0E+1,\n"
+ "-123.0E+1,\n"
+ "-0.0E+1,\n"
+ "123E-1,\n"
+ "0E-1,\n"
+ "-123E-1,\n"
+ "-0E-1,\n"
+ "123.0E-1,\n"
+ "0.0E-1,\n"
+ "-123.0E-1,\n"
+ "-0.0E-1,\n"
+ " 123,\n"
+ " 0,\n"
+ " -123,\n"
+ " -0,\n"
+ " 123.0,\n"
+ " 0.0,\n"
+ " -123.0,\n"
+ " -0.0,\n"
+ " 123e1,\n"
+ " 0e1,\n"
+ " -123e1,\n"
+ " -0e1,\n"
+ " 123.0e1,\n"
+ " 0.0e1,\n"
+ " -123.0e1,\n"
+ " -0.0e1,\n"
+ " 123e+1,\n"
+ " 0e+1,\n"
+ " -123e+1,\n"
+ " -0e+1,\n"
+ " 123.0e+1,\n"
+ " 0.0e+1,\n"
+ " -123.0e+1,\n"
+ " -0.0e+1,\n"
+ " 123e-1,\n"
+ " 0e-1,\n"
+ " -123e-1,\n"
+ " -0e-1,\n"
+ " 123.0e-1,\n"
+ " 0.0e-1,\n"
+ " -123.0e-1,\n"
+ " -0.0e-1,\n"
+ " 123E1,\n"
+ " 0E1,\n"
+ " -123E1,\n"
+ " -0E1,\n"
+ " 123.0E1,\n"
+ " 0.0E1,\n"
+ " -123.0E1,\n"
+ " -0.0E1,\n"
+ " 123E+1,\n"
+ " 0E+1,\n"
+ " -123E+1,\n"
+ " -0E+1,\n"
+ " 123.0E+1,\n"
+ " 0.0E+1,\n"
+ " -123.0E+1,\n"
+ " -0.0E+1,\n"
+ " 123E-1,\n"
+ " 0E-1,\n"
+ " -123E-1,\n"
+ " -0E-1,\n"
+ " 123.0E-1,\n"
+ " 0.0E-1,\n"
+ " -123.0E-1,\n"
+ " -0.0E-1,\n"
+ "123 ,\n"
+ "0 ,\n"
+ "-123 ,\n"
+ "-0 ,\n"
+ "123.0 ,\n"
+ "0.0 ,\n"
+ "-123.0 ,\n"
+ "-0.0 ,\n"
+ "123e1 ,\n"
+ "0e1 ,\n"
+ "-123e1 ,\n"
+ "-0e1 ,\n"
+ "123.0e1 ,\n"
+ "0.0e1 ,\n"
+ "-123.0e1 ,\n"
+ "-0.0e1 ,\n"
+ "123e+1 ,\n"
+ "0e+1 ,\n"
+ "-123e+1 ,\n"
+ "-0e+1 ,\n"
+ "123.0e+1 ,\n"
+ "0.0e+1 ,\n"
+ "-123.0e+1 ,\n"
+ "-0.0e+1 ,\n"
+ "123e-1 ,\n"
+ "0e-1 ,\n"
+ "-123e-1 ,\n"
+ "-0e-1 ,\n"
+ "123.0e-1 ,\n"
+ "0.0e-1 ,\n"
+ "-123.0e-1 ,\n"
+ "-0.0e-1 ,\n"
+ "123E1 ,\n"
+ "0E1 ,\n"
+ "-123E1 ,\n"
+ "-0E1 ,\n"
+ "123.0E1 ,\n"
+ "0.0E1 ,\n"
+ "-123.0E1 ,\n"
+ "-0.0E1 ,\n"
+ "123E+1 ,\n"
+ "0E+1 ,\n"
+ "-123E+1 ,\n"
+ "-0E+1 ,\n"
+ "123.0E+1 ,\n"
+ "0.0E+1 ,\n"
+ "-123.0E+1 ,\n"
+ "-0.0E+1 ,\n"
+ "123E-1 ,\n"
+ "0E-1 ,\n"
+ "-123E-1 ,\n"
+ "-0E-1 ,\n"
+ "123.0E-1 ,\n"
+ "0.0E-1 ,\n"
+ "-123.0E-1 ,\n"
+ "-0.0E-1 ,\n"
+ " 123 ,\n"
+ " 0 ,\n"
+ " -123 ,\n"
+ " -0 ,\n"
+ " 123.0 ,\n"
+ " 0.0 ,\n"
+ " -123.0 ,\n"
+ " -0.0 ,\n"
+ " 123e1 ,\n"
+ " 0e1 ,\n"
+ " -123e1 ,\n"
+ " -0e1 ,\n"
+ " 123.0e1 ,\n"
+ " 0.0e1 ,\n"
+ " -123.0e1 ,\n"
+ " -0.0e1 ,\n"
+ " 123e+1 ,\n"
+ " 0e+1 ,\n"
+ " -123e+1 ,\n"
+ " -0e+1 ,\n"
+ " 123.0e+1 ,\n"
+ " 0.0e+1 ,\n"
+ " -123.0e+1 ,\n"
+ " -0.0e+1 ,\n"
+ " 123e-1 ,\n"
+ " 0e-1 ,\n"
+ " -123e-1 ,\n"
+ " -0e-1 ,\n"
+ " 123.0e-1 ,\n"
+ " 0.0e-1 ,\n"
+ " -123.0e-1 ,\n"
+ " -0.0e-1 ,\n"
+ " 123E1 ,\n"
+ " 0E1 ,\n"
+ " -123E1 ,\n"
+ " -0E1 ,\n"
+ " 123.0E1 ,\n"
+ " 0.0E1 ,\n"
+ " -123.0E1 ,\n"
+ " -0.0E1 ,\n"
+ " 123E+1 ,\n"
+ " 0E+1 ,\n"
+ " -123E+1 ,\n"
+ " -0E+1 ,\n"
+ " 123.0E+1 ,\n"
+ " 0.0E+1 ,\n"
+ " -123.0E+1 ,\n"
+ " -0.0E+1 ,\n"
+ " 123E-1 ,\n"
+ " 0E-1 ,\n"
+ " -123E-1 ,\n"
+ " -0E-1 ,\n"
+ " 123.0E-1 ,\n"
+ " 0.0E-1 ,\n"
+ " -123.0E-1 ,\n"
+ " -0.0E-1 ,\n"
+ "\"\",\n"
+ "\"zyxwvuts\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"\\u1234\\uabcd\\uABCD\",\n"
+ "\"zyxwvutszyxwvuts\",\n"
+ "\"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"zyxwvuts\\u1234\\uabcd\\uABCD\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\",\n"
+ "\"\\u1234\\uabcd\\uABCDzyxwvuts\",\n"
+ "\"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\",\n"
+ "\"zyxwvutszyxwvutszyxwvuts\",\n"
+ "\"zyxwvuts\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\",\n"
+ "\"zyxwvuts\\u1234\\uabcd\\uABCDzyxwvuts\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\bzyxwvutszyxwvuts\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCDzyxwvuts\",\n"
+ "\"\\u1234\\uabcd\\uABCDzyxwvutszyxwvuts\",\n"
+ "\"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\",\n"
+ "\"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCDzyxwvuts\",\n"
+ "\"zyxwvutszyxwvuts\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"zyxwvuts\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"\\u1234\\uabcd\\uABCDzyxwvuts\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ "\"zyxwvutszyxwvuts\\u1234\\uabcd\\uABCD\",\n"
+ "\"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\",\n"
+ "\"zyxwvuts\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\\u1234\\uabcd\\uABCD\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\",\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\",\n"
+ "\"\\u1234\\uabcd\\uABCDzyxwvuts\\u1234\\uabcd\\uABCD\",\n"
+ "\"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\",\n"
+ "\"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\",\n"
+ " \"\",\n"
+ " \"zyxwvuts\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"\\u1234\\uabcd\\uABCD\",\n"
+ " \"zyxwvutszyxwvuts\",\n"
+ " \"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"zyxwvuts\\u1234\\uabcd\\uABCD\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\",\n"
+ " \"\\u1234\\uabcd\\uABCDzyxwvuts\",\n"
+ " \"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\",\n"
+ " \"zyxwvutszyxwvutszyxwvuts\",\n"
+ " \"zyxwvuts\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\",\n"
+ " \"zyxwvuts\\u1234\\uabcd\\uABCDzyxwvuts\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\bzyxwvutszyxwvuts\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCDzyxwvuts\",\n"
+ " \"\\u1234\\uabcd\\uABCDzyxwvutszyxwvuts\",\n"
+ " \"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\",\n"
+ " \"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCDzyxwvuts\",\n"
+ " \"zyxwvutszyxwvuts\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"zyxwvuts\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"\\u1234\\uabcd\\uABCDzyxwvuts\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\",\n"
+ " \"zyxwvutszyxwvuts\\u1234\\uabcd\\uABCD\",\n"
+ " \"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\",\n"
+ " \"zyxwvuts\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\\u1234\\uabcd\\uABCD\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\",\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\",\n"
+ " \"\\u1234\\uabcd\\uABCDzyxwvuts\\u1234\\uabcd\\uABCD\",\n"
+ " \"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\",\n"
+ " \"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\",\n"
+ "\"\" ,\n"
+ "\"zyxwvuts\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"zyxwvutszyxwvuts\" ,\n"
+ "\"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"zyxwvuts\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"\\u1234\\uabcd\\uABCDzyxwvuts\" ,\n"
+ "\"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"zyxwvutszyxwvutszyxwvuts\" ,\n"
+ "\"zyxwvuts\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\" ,\n"
+ "\"zyxwvuts\\u1234\\uabcd\\uABCDzyxwvuts\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\bzyxwvutszyxwvuts\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCDzyxwvuts\" ,\n"
+ "\"\\u1234\\uabcd\\uABCDzyxwvutszyxwvuts\" ,\n"
+ "\"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\" ,\n"
+ "\"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCDzyxwvuts\" ,\n"
+ "\"zyxwvutszyxwvuts\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"zyxwvuts\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"\\u1234\\uabcd\\uABCDzyxwvuts\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ "\"zyxwvutszyxwvuts\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"zyxwvuts\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"\\u1234\\uabcd\\uABCDzyxwvuts\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\" ,\n"
+ "\"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"\" ,\n"
+ " \"zyxwvuts\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"zyxwvutszyxwvuts\" ,\n"
+ " \"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"zyxwvuts\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"\\u1234\\uabcd\\uABCDzyxwvuts\" ,\n"
+ " \"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"zyxwvutszyxwvutszyxwvuts\" ,\n"
+ " \"zyxwvuts\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\" ,\n"
+ " \"zyxwvuts\\u1234\\uabcd\\uABCDzyxwvuts\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\bzyxwvutszyxwvuts\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCDzyxwvuts\" ,\n"
+ " \"\\u1234\\uabcd\\uABCDzyxwvutszyxwvuts\" ,\n"
+ " \"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\" ,\n"
+ " \"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCDzyxwvuts\" ,\n"
+ " \"zyxwvutszyxwvuts\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"zyxwvuts\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"\\u1234\\uabcd\\uABCDzyxwvuts\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\" ,\n"
+ " \"zyxwvutszyxwvuts\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"zyxwvuts\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"zyxwvuts\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\bzyxwvuts\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"\\u1234\\uabcd\\uABCDzyxwvuts\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"\\u1234\\uabcd\\uABCD\\\\\\/\\r\\n\\t\\f\\b\\u1234\\uabcd\\uABCD\" ,\n"
+ " \"\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\\u1234\\uabcd\\uABCD\" ,\n"
+ "{},\n"
+ "{ },\n"
+ "{\"1\":1},\n"
+ "{ \"1\" : 1 },\n"
+ "{\"1\":1,\"2\":2},\n"
+ "{ \"1\" : 1, \"2\" : 2 },\n"
+ " {},\n"
+ " { },\n"
+ " {\"1\":1},\n"
+ " { \"1\" : 1 },\n"
+ " {\"1\":1,\"2\":2},\n"
+ " { \"1\" : 1, \"2\" : 2 },\n"
+ "{} ,\n"
+ "{ } ,\n"
+ "{\"1\":1} ,\n"
+ "{ \"1\" : 1 } ,\n"
+ "{\"1\":1,\"2\":2} ,\n"
+ "{ \"1\" : 1, \"2\" : 2 } ,\n"
+ " {} ,\n"
+ " { } ,\n"
+ " {\"1\":1} ,\n"
+ " { \"1\" : 1 } ,\n"
+ " {\"1\":1,\"2\":2} ,\n"
+ " { \"1\" : 1, \"2\" : 2 } ,\n"
+ "[],\n"
+ "[ ],\n"
+ "[1],\n"
+ "[ 1 ],\n"
+ "[1,2],\n"
+ "[ 1, 2 ],\n"
+ " [],\n"
+ " [ ],\n"
+ " [1],\n"
+ " [ 1 ],\n"
+ " [1,2],\n"
+ " [ 1, 2 ],\n"
+ "[] ,\n"
+ "[ ] ,\n"
+ "[1] ,\n"
+ "[ 1 ] ,\n"
+ "[1,2] ,\n"
+ "[ 1, 2 ] ,\n"
+ " [] ,\n"
+ " [ ] ,\n"
+ " [1] ,\n"
+ " [ 1 ] ,\n"
+ " [1,2] ,\n"
+ " [ 1, 2 ] ,\n"
+ "{\"x\":{}},\n"
+ "{\"x\":[]},\n"
+ "{ \"x\" : {} },\n"
+ "{ \"x\" : [] },\n"
+ "[{}],\n"
+ "[[]],\n"
+ "[ { } ],\n"
+ "[ [ ] ],\n"
+ " {\"x\":{}},\n"
+ " {\"x\":[]},\n"
+ " { \"x\" : {} },\n"
+ " { \"x\" : [] },\n"
+ " [{}],\n"
+ " [[]],\n"
+ " [ { } ],\n"
+ " [ [ ] ],\n"
+ "{\"x\":{}} ,\n"
+ "{\"x\":[]} ,\n"
+ "{ \"x\" : {} } ,\n"
+ "{ \"x\" : [] } ,\n"
+ "[{}] ,\n"
+ "[[]] ,\n"
+ "[ { } ] ,\n"
+ "[ [ ] ] ,\n"
+ " {\"x\":{}} ,\n"
+ " {\"x\":[]} ,\n"
+ " { \"x\" : {} } ,\n"
+ " { \"x\" : [] } ,\n"
+ " [{}] ,\n"
+ " [[]] ,\n"
+ " [ { } ] ,\n"
+ " [ [ ] ] ,\n\n"
+ "#values to NOT match\n"
+ "Null,\n"
+ "False,\n"
+ "True,\n"
+ "01,\n"
+ "+1,\n"
+ "1.,\n"
+ "\" \" \",\n"
+ "\" \\ \",\n"
+ "\" \\x \",\n"
+ "\"\"x,\n";
final Pattern pattern = Pattern.compile(regex);
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