fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. import java.util.regex.Matcher;
  8. import java.util.regex.Pattern;
  9.  
  10. /* Name of the class has to be "Main" only if the class is public. */
  11. class NonGreedyRegex {
  12.  
  13. public static void main(String[] args) {
  14. String problematic = "$1$2$";
  15. NonGreedyRegex test = new NonGreedyRegex();
  16. test.matchString(problematic);
  17. }
  18.  
  19. static String THE_REGEX = "\\$(.*?)\\$";
  20. static Pattern THE_PATTERN = Pattern.compile(THE_REGEX);
  21.  
  22. public void matchString(String dataString) {
  23.  
  24. Matcher matcher = THE_PATTERN.matcher(dataString);
  25. if (matcher.matches()) {
  26. String dataItem = matcher.group(1);
  27. System.out.println("Matched group: "+dataItem);
  28. }
  29. }
  30. }
Success #stdin #stdout 0.11s 320256KB
stdin
Standard input is empty
stdout
Matched group: 1$2