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

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

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

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

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

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

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

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

2 ответа2

4

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

\ Г \ п \ т \ т

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

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

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

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

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

HREF =\"\"

1

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

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .