fork(1) download
  1. import java.util.*;
  2. import java.lang.*;
  3. import java.util.regex.Matcher;
  4. import java.util.regex.Pattern;
  5.  
  6. class Main
  7. {
  8. public static void main (String[] args) throws java.lang.Exception
  9. {
  10. String str = "Message:id1:[label1:label2:labelN]:id2:[label1:label2:labelM]:id3:[label1:label2:labelK]";
  11. Pattern p = Pattern.compile("([^:]+):\\[([^\\]]+)\\]");
  12. Matcher m = p.matcher(str.substring(8));
  13. Map<String, List<String>> idmap = new HashMap<String, List<String>>();
  14. while (m.find()) {
  15. List<String> l = new ArrayList<String>();
  16. String[] tok = m.group(2).split(":");
  17. for (String t: tok)
  18. l.add(t);
  19. idmap.put(m.group(1), l);
  20. }
  21. System.out.printf("IdMap %s%n", idmap);
  22. }
  23. }
Success #stdin #stdout 0.06s 380224KB
stdin
Standard input is empty
stdout
IdMap {id2=[label1, label2, labelM], id1=[label1, label2, labelN], id3=[label1, label2, labelK]}