Блокнот ++ найдите строку с новой строкой и замените

9448
Der Hochstapler

[Блокнот ++ Вопрос]

Как я могу использовать поиск и замену, чтобы заменить атрибут серии тегов, используя выражение ?

Пример сценария:

Допустим, у меня есть несколько строк, например:

<li><a title="Bla bla" href= "http://www.url.com/etc">Text</a></li> 

И я хочу заменить их на это:

<li><a title="Bla bla" href="">Text</a></li> 

Обратите внимание на новую строку и двойные вкладки на оригинале.

0

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

4
JMD

Говоря конкретно о новой строке и двойных вкладках, в расширенном поисковом режиме найдите:

\ Г \ п \ т \ т

и заменить на:

(пусто, ничего, пустая строка)

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

href = \ " (insert-http-url-regex-here) \"

и заменить на:

HREF = \ "\"

по какой-то причине notepad ++ использует реализацию регулярных выражений SciTE, которая представляет собой строчный шаблон поиска. Вот почему это двухэтапный процесс, вы не можете использовать регулярные выражения в Notepad ++ для поиска разрывов строк. Возможно, вы захотите проверить Textpad, если вы собираетесь делать такую ​​работу все время. Doltknuckle 15 лет назад 3
Конечно, но как я подробно изложил в моем ответе, вы МОЖЕТЕ найти разрывы строк, используя режим расширенного поиска. Это проблема запустить два шага? И хотя я годами пользовался и продвигал Textpad, я переключился, и спрашивающий спросил конкретно о Notepad ++. JMD 15 лет назад 0
1
foraidt

AFAIK, вы не можете использовать регулярные выражения-замены для нескольких строк (в Notepad ++), поэтому вы должны сначала сделать их однострочными. Вот как это сделать с помощью макроса:

  1. Нажмите CTRL+Fи введите, href=затем нажмите EnterиEscape
  2. Начать запись макроса ( CTRL+SHIFT+R)
  3. Нажмите Delete3 раза (один раз для перевода строки, два раза для вкладок)
  4. Закончите запись макроса ( CTRL+SHIFT+Rснова)
  5. Нажмите, F3чтобы найти следующий href=случай.
  6. Выполнить макрос ( CTRL+SHIFT+P)
  7. Продолжайте с шага 5, пока все случаи не будут заменены.

Примечание: Если все ваши href=появления одинаковы, вы также можете поместить поиск в макрос (т.е. переключать шаги 1 и 2) и выполнять макрос, пока все не окажется в одной строке.

Теперь вы можете выполнять поиск и замену регулярными выражениями ( CTRL+H):
Поиск: href=".*">
Заменить на:href="">

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