Это то, что я сделал ранее сегодня:
- Извлечение комментария из файлов C ++
- Используйте regex для извлечения определения пространства имен
- Используйте простой поиск строки, чтобы получить открытые и закрытые позиции фигурных скобок
Добавленные различные проверки работоспособности показывают, что я успешно обрабатываю 99,925% своих файлов (5 сбоев из 6678 файлов). Проблемы возникают из-за несоответствия в числах {и}, вызываемого несколькими '{' или '}' в строках, и нечистого использования инструкции препроцессора.
Однако я имею дело только с заголовочными файлами, и я владею кодом. Это ограничивает количество сценариев, которые могут вызвать некоторые проблемы, и я могу вручную изменить те, которые я не рассматриваю.
Конечно, я знаю, что есть много случаев, когда он потерпит неудачу, но, вероятно, этого достаточно для того, чего я хочу достичь.
Спасибо за ваши ответы.