fork(2) download
  1. import java.util.*;
  2. import java.lang.*;
  3. import java.io.*;
  4. import java.util.regex.*;
  5.  
  6. class Ideone
  7. {
  8. public static void main (String[] args) throws java.lang.Exception
  9. {
  10. String s = "${abc.xzy}/demo/${ttt.bbb}\ntest${kkk.mmm}";
  11. Map<String, String> map = new HashMap<String, String>();
  12. map.put("abc.xzy", "World");
  13. map.put("ttt.bbb", "Hello");
  14. map.put("kkk.mmm", "System");
  15. StringBuffer result = new StringBuffer();
  16. Matcher m = Pattern.compile("\\$\\{([^{}]+)\\}").matcher(s);
  17. while (m.find()) {
  18. String value = map.get(m.group(1));
  19. m.appendReplacement(result, value != null ? value : m.group());
  20. }
  21. m.appendTail(result);
  22. System.out.println(result.toString());
  23.  
  24. }
  25. }
Success #stdin #stdout 0.04s 2184192KB
stdin
Standard input is empty
stdout
World/demo/Hello
testSystem