Ответы:
Это невозможно при обычном поиске и замене . Если вы используете Notepad ++ 6, вы можете воспользоваться новым движком регулярных выражений, который поддерживает PCRE ( источник ).
Нажмите Ctrl+, Hчтобы открыть диалоговое окно « Найти и заменить » и выполнить следующее действие:
Find what: \^.*?~
Replace with:
Wrap around: checked
Regular expression: selected
. matches newline: checked
Теперь нажмите Alt+, Aчтобы заменить все вхождения.
Регулярное выражение в Find, составленное следующим образом:
\^это буквальный ^ ..*? Наименьшее количество символов, которое позволяет регулярному выражению соответствовать.~это буквальный ~ ..*?Образец работал для меня искать между персонажами ;и <. Таким образом, поиск НАЙТИ ;.*?<ЗАМЕНУ ;с параметрами, выбранными для Regular expressionи. matches new line
Ты захочешь найти \^.*?~и убедиться . новая строка включена:
Это потому, что ^имеет особое значение, оно соответствует началу строки. Таким образом, нам нужно избежать обратной косой черты \^.
Запись ^*будет соответствовать «любому количеству начала строки в строке». .*соответствует «любому символу», но по умолчанию не соответствует переводу строки.
~символов (или то есть несколько совпадений), это будет соответствовать первому ^полностью или до последнего ~.
*?это не жадный, он ленивый .*?~никогда не будет соответствовать больше, чем один ~. Так что все в порядке.
Попробуйте использовать это регулярное выражение в разделе поиска, \^[^~]*~ чтобы заменить все между ^ и ~ включительно.
^~.
\^[^~]*~на ^~?
У меня было похожее ЗАМЕСТИТЕЛЬНОЕ требование замены с начальным и конечным символами. Это пришло из внешнего вида электронной почты; сотни членов, и я просто хотел, чтобы имена людей со всем удаленным между <RemoveTextHere> .
оригинал
First1 Last1 <First1.Last1@email.com>; First2 Last2 <First2.Last2@email.com>; First3 Last3 <First3.Last3@email.com>; First4 Last4 <First4.Last4@email.com>;
Деннис был близок к моему решению, Find what: \^.*?~но я должен был изменить свои буквальные символы, Find what: \<.*?>тогда я должен был удалить первую косую черту Find what: <.*?>.
Обновлено Find what: <.*?> ; Заменить пустым.
First1 Last1 ; First2 Last2 ; First3 Last3 ; First4 Last4
_
Специальные символы : *, $, \, +, ^, (и ), [, ], {и}
Джерри Джеремия описывает специальные символы здесь /programming/37742519/notepad-wildcard .