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.stream.Collectors;
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. public static void main (String[] args) throws java.lang.Exception
  11. {
  12. SortedMap<String, String> map = new TreeMap<String, String>();
  13. map.put("test", "REPLACE");
  14. String update = Arrays.stream("$(test) (test) (test2)".split("\\$\\((?=[^)]*\\))|(?<=\\$\\([^(]{0,1000})\\)"))
  15. .map(token -> map.getOrDefault(token, token))
  16. .collect(Collectors.joining(""));
  17.  
  18. System.out.println(update);
  19. }
  20. }
Success #stdin #stdout 0.24s 320832KB
stdin
Standard input is empty
stdout
REPLACE (test)      (test2)