Przetwarzanie kodu Java za pomocą Java

Czy jest możliwe analizowanie kodu Java za pomocą wyrażenia regularnego?

Powiedzmy, że chcę listęint zmienne z tego:

int abc1 = 1;
int abc2 = abc1 + 1;
int abd3 = abc1 + abc2;

I chcę je wrzucićArrayList.

Więc coś takiego:

private void parse(String s){

    List<List<String>> variables = new ArrayList<List<String>>();

    list.add(new ArrayList<String>);//var type
    list.add(new ArrayList<String>);//var name
    list.add(new ArrayList<String>);//var data

    Pattern p = Pattern.compile();//This is what I want
    Matcher m = p.matcher(s);

    while(m.find()){
        String match = m.group();
        Pattern p2 = Pattern.compile();//Here as well
        Matcher m2 = p.matcher(s);
        while(m2.find()){
            for(int i = 0; i < m.groupCount()){
                //add the variables to the lists
            }
        }
    }
}

Pytam, co regex może obsługiwać to zadanie?

Powodem tego wszystkiego jest to, że użytkownik może trochę kontrolować aplikację, używając trochę kodu (aplikacja na Androida btw)

Jeśli nie zaleca się używania wyrażenia regularnego, to jakiego parsera powinienem użyć?

questionAnswers(5)

yourAnswerToTheQuestion