fork(1) 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. /* 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. String s = "true && #{ab_true_cd} || 0";
  13. StringBuffer result = new StringBuffer();
  14. Matcher m = Pattern.compile("(#\\{[^{}]*})|\\btrue\\b").matcher(s);
  15. while (m.find()) {
  16. if (m.group(1) != null) {
  17. m.appendReplacement(result, m.group(1)); // if a #{} block found, restore it
  18. }
  19. else {
  20. m.appendReplacement(result, "1"); // else, replace true with 1
  21. }
  22.  
  23. }
  24. m.appendTail(result);
  25. System.out.println(result.toString());
  26.  
  27. }
  28. }
Success #stdin #stdout 0.1s 321600KB
stdin
Standard input is empty
stdout
1 && #{ab_true_cd} || 0