Многострочный поиск и замена получить набор свойств notepad++ или visual studio
Я должен заменить выражение ниже:-
public string Body =>
this._body;
Для того, чтобы:
public string Body
{
get{return _body;}
set{_body = value;}
}
Я использую Notepad++, чтобы найти и заменить, как показано ниже:- Найти regx: =>\s*.*?;
Заменить regx: {get{return\s*.*?;} set{\s*.*? = value;}}
который, кажется, не работает, и замените его неправильно без имени свойства, как показано ниже:-
Public string Body {get{returns*.*?;} set{s*.*? = value;}}
Как мы можем изменить выражение, чтобы получить желаемый результат с именем свойства? Также мы можем сделать что-то подобное в Visual Studio
? Спасибо.
2 ответа
Вот способ сделать работу с Npp:
- Ctrl+H
- Найти то, что:
\b(public\s+string\s+Body)\s+=>\s+this\.(\w+);
- Заменить:
$1 {get{returns $2;} set{$2 = value;}}
- Заменить все
Это работает для поиска в VS2015 (\bpublic\b[\s\r\n]*\bstring\b[\s\r\n]*\bBody\b([\s|\r\n]*)=>([\s\r\n]*)\bthis\b([\s\r\n]*)\b\._body\b)
Я бы просто использовал поиск и щелкнул выделенную область и вставил ее в зависимости от того, сколько замен происходит. Вам было бы лучше написать небольшое консольное приложение для перебора всех файлов в каталоге, если они имеют одинаковый тип файла.ext
Мне нравится такой подход, когда вы можете сделать еще один шаг вперед, передать каталог и перебрать все соответствующие файлы regx(*). Cs, используя Directory.EnumerateFiles().