Кто-нибудь знает о модуле python для анализа строки комментария в стиле C ++ в стиле Doxygen? Я имею в виду строку вроде этого (простой пример):
/**
* A constructor.
* A more elaborate description of the constructor.
* @param param1 test1
* @param param2 test2
*/
, и я хотел бы извлечь краткое изложение, подробное описание, параметры, возвращаемое значение и т. Д. В настоящее время я делаю это с использованием строковых методов и регулярных выражений, но мое решение не очень крепкий. * Более подробное описание ...
Кто-нибудь знает о модуле python для анализа строки комментария в стиле C ++ в стиле Doxygen? Я имею в виду строку вроде этого (простой пример):
/**
* A constructor.
* A more elaborate description of the constructor.
* @param param1 test1
* @param param2 test2
*/
, и я хотел бы извлечь краткое изложение, подробное описание, параметры, возвращаемое значение и т. Д. В настоящее время я делаю это с использованием строковых методов и регулярных выражений, но мое решение не очень крепкий. * Более подробное описание ...
Кто-нибудь знает о модуле python для анализа строки комментария в стиле C ++ в стиле Doxygen? Я имею в виду строку вроде этого (простой пример):
/**
* A constructor.
* A more elaborate description of the constructor.
* @param param1 test1
* @param param2 test2
*/
, и я хотел бы извлечь краткое изложение, подробное описание, параметры, возвращаемое значение и т. Д. В настоящее время я делаю это с использованием строковых методов и регулярных выражений, но мое решение не очень крепкий. В качестве альтернативы кто-нибудь может порекомендовать простой в использовании Python парсер lib, который я могу быстро настроить?
Заранее спасибо
Возможно, вы сможете создать что-то с помощью модуля SimpleParse, но это потребует создания грамматики EBNF, что может потребовать больше инвестиций, чем вам интересно.
Мост Sphinx/Doxygen (Breathe) использует xml-вывод Doxygen и действует вместо него. Возможно, здесь может сработать аналогичный подход - запустите Doxygen для извлечения документов в формате xml, а затем используйте часть кода из Breathe для получения нужных вам данных.
Вы должны взглянуть на то, как реализован doxygen, чтобы увидеть, как он обрабатывает синтаксический анализ. Я очень сомневаюсь, что он использует регулярное выражение.