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.regex.Matcher;
  7. import java.util.regex.Pattern;
  8.  
  9. /* Name of the class has to be "Main" only if the class is public. */
  10. class Ideone
  11. {
  12. public static void main (String[] args) throws java.lang.Exception
  13. {
  14. String regex = "(?:\"(?=.*\"$)|\\G(?!^))(~?@\\w+(?:,~?@\\w+)*)\"?[,\\h]?";
  15. String string = "\"@smoke\"\n"
  16. + "\"@smoke,@Functional1\"\n"
  17. + "\"@smoke,@Functional1,@Functional2\"\n"
  18. + "\"@smoke\",\"@Functional1\"\n"
  19. + "\"@smoke\",\"~@Functional1\"\n"
  20. + "\"~@smoke\",\"~@Functional1\"";
  21.  
  22. Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
  23. Matcher matcher = pattern.matcher(string);
  24.  
  25. while (matcher.find()) {
  26. System.out.println(matcher.group(1));
  27. }
  28. }
  29. }
Success #stdin #stdout 0.08s 34132KB
stdin
Standard input is empty
stdout
@smoke
@smoke,@Functional1
@smoke,@Functional1,@Functional2
@smoke
@Functional1
@smoke
~@Functional1
~@smoke
~@Functional1