Простой способ добавить текст над всеми методами в решении в VS 2005? - PullRequest
1 голос
/ 14 января 2010

Коллега работал над сценарием Perl для использования исходного файла C ++ и добавления текста над всеми методами в файле. Он хотел разработать код с использованием регулярных выражений с нуля, чтобы определить верхнюю строку метода:

void MyClass::MyMethod(int somethingOrOther)

Попытки сделать это с нуля чреваты наземными минами, как, например, разграничение заголовков методов от макросов, комментариев, условий и т. Д.

Это может быть действительно очень сложный способ сделать что-то, поскольку VS 2005, похоже, может точно определить, где все методы начинаются и заканчиваются (так что я могу нажать на поле, чтобы свернуть источник метода) .

Есть ли в интегрированной среде разработки VS 2005 простой способ добавить текст над каждым методом, для всего решения?

1 Ответ

2 голосов
/ 14 января 2010

Вы можете выполнять поиск и замену по регулярному выражению. Так как вы можете поместить новые строки в блок замены, вы можете сходить с ума и делать все, что захотите (кроме извлечения параметров). Пример готовится.

Строка поиска: ^:b*{:i}:b{:i}\:\:{:i}:b*{\(.*\)}
Заменить строку: ///Regex Example\n///Class: \2\n///Method: \3 returning \1\n\1 \2::\3\4

Код:

///Regex Example
///Class: Class
///Method: Foo returning void
void Class::Foo(int oneParam)
///Regex Example
///Class: Class
///Method: Bar returning void
void Class::Bar(int noParam)

Мне не известен способ подключения к анализатору Visual Studio, если только вы не напишите плагин, который может быть немного излишним.

...