Быстрый и простой способ удалить “мертвый” (прокомментировал) код

Я работаю с наследованной кодовой базой, которая содержит тысячи строк закомментированного кода. Я знаю, что предыдущий кодер означал сохранять всю свою тяжелую работу для потомства вместо того, чтобы просто удалить его, но: Я никогда не буду читать его, и это просто мешает. Один проблемный пример - то, что, когда я выполняю, текстовые поиски определенных сегментов кода I получают десятки "ложных" хитов в прокомментированном коде. ЛАВАШ.

Существует ли быстрый / простой способ обнаружить большие блоки закомментированного кода? Умный RegEx, возможно?

Я, оказывается, работаю в VB.NET в это время, и символ комментария является единственным апострофом.

15
задан Paul Sasik 10 March 2010 в 22:27
поделиться

5 ответов

Вы можете использовать поиск по регулярному выражению. Найдите

^.*'.*$

, чтобы найти одну строку с комментарием. Вы, вероятно, захотите найти как минимум 3 строки, начинающиеся с комментария:

^.*'.*\n.*'.*\n.*'.*$

Не подпускайте кошку к клавиатуре.

13
ответ дан 1 December 2019 в 03:14
поделиться

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

Я был в этой ситуации в прошлом (слишком часто), и в конечном итоге я удаляю закомментированный код, когда работаю над различными модулями.

В качестве примера я открываю класс Person, чтобы внести изменения, и вижу закомментированный код, который еще предстоит удалить. Я проверяю код (мы используем VSS), удаляю плохой код, проверяю его и, наконец, проверяю, чтобы выполнить свою работу.

Прежде чем все это исчезнет, ​​нужно время, но я считаю, что это эффективное использование времени для решения проблемы.

4
ответ дан 1 December 2019 в 03:14
поделиться

Для этого и нужны системы контроля версий.

Я бы удостоверился, что он находится под контролем версий (надеюсь, не в Visual Source Safe), проверил его, удалил весь закомментированный код и вернул его обратно.

Я также не одобряю такой практики в вашей разработке команда будущего.

0
ответ дан 1 December 2019 в 03:14
поделиться

Я бы предложил написать или найти макрос для Visual Studio, который поможет удалять комментарии.

Немного псевдологики:

  • начать с номера строки, прочитать первый символ. запомнить этот номер строки.
  • если это символ комментария VB ', то продолжить
  • прочитать первый символ следующей строки. если это символ комментария, продолжить.
  • при обнаружении строки, не являющейся символом комментария, проанализируйте количество пройденных строк.
  • если количество пройденных строк соответствует вашему порогу n, то удалите их.
0
ответ дан 1 December 2019 в 03:14
поделиться
(^\s*//.*\n)^10

Найдите 10 параллельных закомментированных строк стиля // .

Закомментированные тесты:

\s*//\s*\[Test\].*\n
4
ответ дан 1 December 2019 в 03:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: