fork(3) download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6. import java.util.regex.Matcher;
  7. import java.util.regex.Pattern;
  8.  
  9. /* Name of the class has to be "Main" only if the class is public. */
  10. class Ideone
  11. {
  12. public static void main (String[] args) throws java.lang.Exception
  13. {
  14. final String regex = "(\"\\w+\"\\s*:\\s*\"?[\\w\\s]+\"?)";
  15. final String string = "some value [{ hello \"name\": \"value\", xyz \"hello\": \"another value\" hello \"age\":778 and hello}] ";
  16.  
  17. final Pattern pattern = Pattern.compile(regex);
  18. final Matcher matcher = pattern.matcher(string);
  19. String output = "[{";
  20.  
  21. List<String> allMatches = new ArrayList<String>();
  22.  
  23. while (matcher.find()) {
  24. System.out.println("Full match: " + matcher.group(0));
  25. allMatches.add(matcher.group(0));
  26. }
  27.  
  28. Iterator<String> it = allMatches.iterator();
  29. while(it.hasNext()){
  30. output += (String) it.next();
  31. if(it.hasNext()){
  32. output+= ", ";
  33. }
  34. }
  35.  
  36. output += "}]";
  37. System.out.println(output);
  38. }
  39. }
Success #stdin #stdout 0.06s 28020KB
stdin
Standard input is empty
stdout
Full match: "name": "value"
Full match: "hello": "another value"
Full match: "age":778 and hello
[{"name": "value", "hello": "another value", "age":778 and hello}]