All pastes #373516 Raw Edit

Miscellany

public text v1 · immutable
#373516 ·published 2007-02-26 20:50 UTC
rendered paste body
import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class MySuperTestCaseForMyRegex {

	private static String test_code =
		"package projet.acceleo.test.parse.parser;" +
		"\n" +
		"" +
		"\n" +
		"public class JavaParse {" +
		"\n" +
		"" +
		"\n" +
		"	public String code;" +
		"\n" +
		"" +
		"\n" +
		"	public JavaParse(String code) {" +
		"\n" +
		"		this.code = code;" +
		"\n" +
		"	}" +
		"\n" +
		"" +
		"\n" +
		"	public void tamere(Mere a, String b) {" +
		"\n" +
		"	    b = b + Integer.toString(a);" +
		"\n" +
		"	}" +
		"\n" +
		"" +
		"\n" +
		"	public void parse(Int2 pute, int a, String b) {" +
		"\n" +
		"	    b = b + Integer.toString(a);" +
		"\n" +
		"	}" +
		"\n" +
		"" +
		"\n" +
		"	public void parse(int a, String b) {" +
		"\n" +
		"	    b = b + Integer.toString(a);" +
		"\n" +
		"	}" +
		"\n" +
		"" +
		"\n" +
		"	public String salope(int a, String b) {" +
		"\n" +
		"	    b = b + Integer.toString(a);" +
		"\n" +
		"	}" +
		"\n" +
		"}";

	private static String regex = "\\s*(public|protected|private)\\s+(void|int|String|Int2)\\s+([a-zA-Z0-9]+)\\s*\\(\\s*(void|int|String|Int2)\\s+([a-zA-Z0-9]+){0,1}\\s*(,\\s*(void|int|String|Int2)\\s+([a-zA-Z0-9]+))*\\s*\\)\\s*\\{";

	public static void main(String[]args) {
		System.out.println(test_code);
		Pattern pattern = Pattern.compile(regex);
		Matcher matcher = pattern.matcher(test_code);
		for(int i = 1; i < matcher.groupCount(); i++) {
			System.out.println(matcher.group());
			i++;
		}
	}
}