Chcę uzyskać plik .java, rozpoznać pierwszą klasę w pliku i uzyskać informacje o adnotacjach, metodach i atrybutach z tej klasy.Parsowanie klasy Java z języka Perl lub Python
Czy istnieje moduł w obu językach, który już to robi? Mogłem zbudować proste wyrażenie regularne, aby to zrobić, ale nie wiem, jak rozpoznać w wyrażeniu regularnym nawiasy klamrowe wskazujące koniec klasy/metody.
Nie, wyrażenie regularne nie nadaje się do tego. Rozważ "class Foo {String s =", a nie @Anation tutaj "; } '. –
Dobrze, więc musiałbym użyć gramatyki lub automatu, żeby to zrobić. Czy istnieje jakiś moduł perl/python, który mógłby mi pomóc zrobić coś takiego? – Rafael
@Bart Właściwie możesz wyreasować, aby nie uwzględniać rzeczy w podwójnych cudzysłowach. Problem polega na aparatach ortodontycznych, kiedy nie można naprawdę policzyć, ile nawiasów otwierających i zamykających zdarzyło się do tej pory w regexie. –