fork 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.*;
  7.  
  8. /* Name of the class has to be "Main" only if the class is public. */
  9. class Ideone
  10. {
  11. public static void main (String[] args) throws java.lang.Exception
  12. {
  13. String input = "{\"Glossary\":{\"Title\":\"Exampleglossary\",\"GlossDiv\":{\"title\":\"S\",\"GlossList\":{\"GlossEntry\":{\"ID\":\"SGML\",\"SortAs\":\"SGML\",\"GlossTerm\":\"StandardGeneralizedMarkupLanguage\",\"Acronym\":\"SGML\",\"Abbrev\":\"ISO8879:1986\",\"GlossDef\":{\"para\":\"Ameta-markuplanguage,usedtocreatemarkuplanguagessuchasDocBook.\",\"GlossSeeAlso\":[\"GML\",\"XML\"]},\"GlossSee\":\"markup\"}}}}}";
  14. Pattern p = Pattern.compile("\"([A-Z])([^\"]*\"\\s*:)"); // matches '"Xxxx" :'
  15. Matcher m = p.matcher(input);
  16. StringBuffer output = new StringBuffer();
  17. while (m.find()) {
  18. m.appendReplacement(output, String.format("\"%s$2", m.group(1).toLowerCase()));
  19. }
  20. m.appendTail(output);
  21. System.out.println(output.toString());
  22. }
  23. }
Success #stdin #stdout 0.05s 2184192KB
stdin
Standard input is empty
stdout
{"glossary":{"title":"Exampleglossary","glossDiv":{"title":"S","glossList":{"glossEntry":{"iD":"SGML","sortAs":"SGML","glossTerm":"StandardGeneralizedMarkupLanguage","acronym":"SGML","abbrev":"ISO8879:1986","glossDef":{"para":"Ameta-markuplanguage,usedtocreatemarkuplanguagessuchasDocBook.","glossSeeAlso":["GML","XML"]},"glossSee":"markup"}}}}}