Способ удалить конкретные устаревшие строки кода из всей кодовой базы? - PullRequest
0 голосов
/ 30 ноября 2010

У меня есть код:

#if SILOG
    SiAuto.Main.LogException(ex);
    // some other lines
#endif

Какой самый простой способ удалить окружающий #if из всей моей кодовой базы, т. Е. В итоге просто:

SiAuto.Main.LogException(ex);

IЯ использую Visual Studio 2010. Я приму первый ответ, который я могу проверить, чтобы увидеть, работает ли он.Ждем ваших идей!

1 Ответ

1 голос
/ 30 ноября 2010

Если ваша кодовая база находится в одном файле решения, и у вас нет вложенных директив препроцессора, вы можете найти и заменить на регулярное выражение:

\#if SILOG{(.*\n)@}\#endif

Для строки замены используйте это:

\1

Убедитесь, что используется опция поиска "Регулярные выражения".

Шаг за шагом:

  1. Открыть диалог поиска и замены (ctrl + H)
  2. В поле "Найти что:" введите "#if SILOG‹(.*\n)@ innovative#endif" без кавычек
  3. В поле «Заменить на:» введите «\ 1» без кавычек
  4. В разделе «Искать» выберите «Все решение»
  5. Развернуть "Найти варианты"
  6. Отметьте «Использовать:» и выберите «Регулярные выражения» в выпадающем списке
  7. Нажмите «Найти далее», чтобы увидеть, сработало ли оно
  8. Нажмите «Заменить все», если вы смелый

Однако это не исправит отступ кода, который был между #if / #endif.

...