regex für klammerpaaren

Selek1

Grünschnabel
Brauche einen regex der im quellcode aufrufu einer methode mit allen parametern findet

bisher hab ich das


\\getSystemProperty\\(([^)]+)\\)

aber ich kann nur erte schließende klammer finden
 
Hallo,

schau dir folgendes an, hier hast du alle Regeln aufgelistet.
http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html


Java:
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexExample {

	private static String s = "System.getProperty(\"Java\") ... System.getProperty(\"Sun\")"
			+ "System.getProperty(\"JVM\") ... ... System.getProperty(\"J2SE\")"
			+ "System.getProperty(\"EFGH IJK\") System.getProperty(\"line.Separator\")";

	public static void main(String[] args) {
		String a = getAllMatches(s, "System.getProperty\\(\"[\\w\\. ]*\"\\)");
		String b = a.replaceAll("System.getProperty\\(\"|\"\\)", "");
		String[] c = b.split("_");

		for (int i = 0; i < c.length; i++) {
			System.out.println(c[i]);
		}
	}

	public static String getAllMatches(String input, String regex) {
		Pattern p = Pattern.compile(regex);

		Matcher m = p.matcher(input);
		String output = "";
		for (int i = 0; i < input.length(); i++)
			if (m.find()) {
				output = output + m.group() + "_";
			}
		return output;

	}
}


Vg Erdal
 
Zurück