Регулярные выражения к Notepad++
Notepad++ имеет в своем составе полезный инструмент как поиск и замена с функцией регулярных выражений.
Я собрал немного информации на эту тему и решил объединить её для удобного поиска необходимых данных.
Задание 1.
Есть <div class="a1"> ЗДЕСЬ РАЗНЫЙ КОД ИЛИ ТЕКТ</div>
Регулярное выражение: <div class="a1">.*</div>
Задание 3. Есть страница с картинками, у них разные размеры. Задание привести их к одному виду.
- <img width="300" height="200" src=""
- <img width="350" height="210" src=""
- <img width="250" height="110" src=""
В результат должны получить: <img width="200" height="200" src=""
Регулярное выражение:
<img width="(\d+)" height="(\d+)" src=""
Задание 4. Нужно быстро отредактировать без малого 300 строк, убрав из них лишнее. Притом, "основная масса" лишнего лежит между кавычками
Выражение tppabs=".*" действительно работает. Но работает, мягко говоря, очень радикально. В качестве примера рассмотрим строчку из index.htm вышеуказанного сайта:
<a href="href.htm" tppabs="" width="126" height="41"></a>
Почему я выделил именно так? Потому что regexp tppabs=".*" дает право редактору выделить текст от собственно tppabs=" и прямо до самого последнего символа " (двойные кавычки) в строке. А то как-то я сразу и не сообразил, почему после выполнения глобальной замены с сайта исчезла добрая треть содержимого :).
Но, после непродолжительно гугления и курения мануалов было найдено (та-дааам) решение! И вот он - полностью рабочий regexp: tppabs="[^"]*". Само собой, не забудьте пробельчик в начале :)
Давайте посмотрим, что именно хочет донести это выражение до редактора:
1. tppabs= - "Найди то, что начинается железно с этого...";
2. " - "...захвати первые двойные кавычки...";
3. [^"] - "...потом, пожалуйста, выдели все символы до следующих двойных кавычек...";
4. " - "...и не забудь доесть те самые вторые двойные кавычки".