Notepad++, Sublime Text editor замена с регулярными выражениями
Sublime Text Editor
Возник вопрос, какой regex я могу использовать в текстовом редакторе Sublime, чтобы найти все атрибуты в открывающем теге, например:
<h1 class="class-one class-two" data-level="2" data-pm-slice="1 1 []">
Я хочу заменить его на:
<h1>
- Откройте инструмент "Найти и заменить": Нажмите
Ctrl+Hв Windows/Linux илиCmd+Opt+Fв macOS. - Включите регулярные выражения: Нажмите кнопку
.*в левом нижнем углу диалогового окна "Найти и заменить", чтобы включить режим регекса. - Введите регекс в поле "Найти что": Используйте этот регекс для точного соответствия любым атрибутам внутри тегов
<h1>:
(<h1)[^>]*(>)
- Пояснения:
(<h1): Захватывает начальный тег<h1в группу для ссылки в замене.[^>]*: Сопоставляет все символы, не являющиеся закрывающими>,эффективно охватывая все атрибуты внутри тега.(>): Захватывает закрывающий>тег в другую группу.
- Задайте текст замены: В поле "Заменить на" используйте:
$1$2
- Эта строка замены использует
$1и$2для ссылки на захваченные группы из регекса, эффективно восстанавливая тег без его атрибутов. - Выполните замену: Нажмите "Заменить все", чтобы заменить все найденные случаи, когда у тегов
<h1>есть дополнительные атрибуты, оставив вам обычные теги<h1>.
Notepad++
Иногда лень заставляет разбираться в тех вещах, в которых раньше даже не хотелось копаться. Все таки легче пол часа час разобраться в автоматической замене с распознаванием регуларных выражений чем в ручную лопатить огромные текстовые файлы и заменять в ручную!!
Например нам надо поменять
a href="любой_УРЛ"
на
a href="наш_УРЛ"
Обозначаем место любого УРЛ с помощью [^"]* и выходит что то вроде:
a href="[^"]*"
заменить на
a href="наш_УРЛ"
Вот и все, нужно не забыть поставить галочку "Регулярные выражения"