Форматирование кода массово в Visual Studio - PullRequest
0 голосов
/ 19 марта 2010

Я унаследовал проект, в котором все частные переменные, а их тысячи, разделены пустой строкой. Например,

    private pnlSecurityReport _pnlSecurityReport = null;

    private pnlCalendar _pnlCalendar = null;

    private CtlContacts _pnlContacts = null;

    private pnlEmails _pnlEmails = null;

    private CtlNotes _pnlNotes = null;

    private pnlRoles _pnlRoles = null;

    private pnlSecurity _pnlSecurity = null;

    private pnlSignatures _pnlSignatures = null;

Это действительно раздражает. Я хотел бы удалить пустые строки. Помимо написания моего собственного инструмента для поиска и удаления лишней строки, есть ли способ сделать это, возможно, используя RegEx-Fu в диалоге поиска и замены?

Ответы [ 3 ]

4 голосов
/ 19 марта 2010

Попробуйте заменить \n\n на \n, отметьте Use Regular Expressions.

3 голосов
/ 19 марта 2010

Не очень тщательно протестировано, но что-то вроде этого может сработать: откройте диалоговое окно «Заменить», отметьте «Регулярные выражения», введите {^:b*:w+:b+:i:b+:i:b+=:b+.*;$\n}\n в текстовое поле «Найти» и \1 в текстовое поле «Заменить» .

Короче говоря; сопоставить строки, соответствующие шаблону word identifier identifier = value;, за которым следует пустая строка, пометить все совпадения, кроме последней новой строки, а затем заменить полное совпадение теговым выражением.

Это даст преимущество не слепого удаления всех пустых строк из файла, а только тех, которые следуют после типичных объявлений полей или переменных в сочетании с присвоением значений.

Разбивка выражения:

{    - Start of tagged expression
^    - Match beginning of line
:b*  - Zero or more whitespace characters (such as space or tab)
:w+  - One or more alphabetic characters
:b+  - One or more whitespace characters
:i   - An identifier string
:b+  - One or more whitespace characters
:i   - An identifier string
:b+  - One or more whitespace characters
=    - an equal sign
:b+  - One or more whitespace characters
.+   - One or more characters of any kind
;    - a semicolon
$    - end of the line
\n   - a newline
}    - end of tagged expression
\n   - a newline
1 голос
/ 19 марта 2010

Если у вас есть UltraEdit, вы можете заменить | Используйте регулярные выражения:

Найти: ^ p $
Заменить: "" (то есть ничего не кавычки, кавычки, используемые для иллюстрации)

...