Замените регулярное выражение в Textpad, где поисковый запрос занимает несколько строк

6195
Warren Blumenow

Можно ли выполнять поиск и замену регулярного выражения в Textpad, где поисковый термин занимает несколько строк.

например, документ содержит:

Hello ab_c D_EF 12_3 World 

Я хотел бы заменить все между "Hello" и "World" пробелом.

Я попытался найти регулярное выражение:

Hello.*World 

но это не соответствует (я полагаю, из-за текста, охватывающего несколько строк).

1

1 ответ на вопрос

0
speakr

Так как Textpad имеет очень ограниченную поддержку регулярных выражений, я сделал это только с тремя заменами:

  1. Замените каждую новую строку ( \nили \r\n) в вашем тексте уникальным шаблоном, например##NEWLINE##

  2. Используйте регулярное выражение (Hello).*(World)и замените совпадение на \1 \2
    (вы также можете просто использовать Hello.*Worldи заменить на Hello World)

  3. Наконец, верните шаг 1, заменив все ##NEWLINE##на новую строку


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

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