是否可以使用正則表達式解析某些Java代碼?用Java解析Java代碼
所以我們說,我想從這個int
變量列表:
int abc1 = 1;
int abc2 = abc1 + 1;
int abd3 = abc1 + abc2;
而且我希望把這些成ArrayList
。
因此,像這樣:
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
}
}
}
}
我所問的是什麼樣的正則表達式可能可能完成這一任務?
這樣做的原因是所有這樣的用戶可以採取有點過使用位的代碼應用控制的(一個Android應用順便說一句)
如果不建議使用一個正則表達式,那麼我應該使用什麼解析器?
就像一個評論,有很多[Java解析器](http://www.google.com/?q=java+parser)可用。我不會試圖用正則表達式來做到這一點。 –
你該讀什麼java文件? –
這背後的動機是什麼? – Sikorski