Приветствую друзья. Все знают, что во втором блокноте есть регулярки. Так вот, не так давно, мне пришлось опять столкнулся с ними, при размещения контента на PBN. Ну или с ручной заменой в куче статей, чего я не хотел. И так, давайте чуть я зацитирую с других ресурсов основу, а дальше покажу пару классных приемов, что понадобились именно мне. Возможно, кому то будет полезно. Погнали!
. — Точка представляет один любой символ
^ — Начало строки
$ — Конец строки
\s — Пробел
\S — Не Пробел
\w — буква, цифра или подчёркивание _
\d — Любая цифра
\D — Любой символ, но не цифра
[0-9] — Любая цифра
[a-z] — Любая буква от a до z (весь латинский набор символов) в нижнем регистре
[A-Z] — Любая буква от a до z в ВЕРХНЕМ регистре
[a-zA-Z] — Любая буква от a до z в любом регистре
[a-Z] — То же самое
* — «Повторитель». Означает, что предшествующий символ может повторяться (0 или более раз)
.* — Абсолютно любой набор символов. Например, условие
.*
— найдет все что между тегами
(^.*$) — Любой текст между началом и концом строки
([0-9][0-9]*.) — ищет любые двухзначные в данном случае цифры
\n\r — Ищет пустые строки. Вроде как если оставить пустым окно “Заменить” то удаляет пустые строки, но можно поставить вот это \0
А теперь больше полезности:
Например, у вас есть 100500 страниц контента, где допущена какая-либо ошибка, например, как было у меня. Посмотрите, в дескрипшене есть еще один одиночный апостроф :
title: ‘Lorem Ipsum is simply dummy text of the printing and typesetting industry. ‘
visible: true
process:
markdown: true
twig: true
description: ‘Lorem Ipsum ‘is simply dummy text of the printing and typesetting industry. Lorem Ipsum is simply dummy text of the printing and typesetting industry. ‘
Вот его то мы и будем удалять вот такой регуляркой:
(^.*’)(.*)(‘)(.*)(‘$)
Для чего нужны эти скобки? Они нужны для того, что бы “определить части”
То есть:
1 – (^.*’)
2 – (.*)
3 – (‘)
4 – (.*)
5 – (‘$)
Давайте разберем по порядку:
Это части. Зачем они? Для дальнейшей замены или удаления только одной из них. Вот таким способом:
\1\2\4\5
Грубо говоря, я удаляю только 3ю часть из текста. А 1, 2, 4, 5 – останется. Где и как применять:
Найти (^.*’)(.*)(‘)(.*)(‘$)
Заменить на
\1\2\4\5
В частности, удаляю 2й апостроф, если мы находим такого рода конструкцию в документе. Запускаю поиск и замену по файлам – и вуаля, готово! А что если у нас несколько апострофов в дескрипшене? Не беда, увеличиваем регулярку, добавляя внутрь еще правила:
2 лишних опострафа в дескрипшине:
Найти (^.*’)(.*)(‘)(.*)(‘)(.*)(‘$)
Заменить на
\1\2\4\6\7
3 лишних опострафа в дескрипшине:
Найти (^.*’)(.*)(‘)(.*)(‘)(.*)(‘)(.*)(‘$)
Заменить на
\1\2\4\6\8\9
Таким образом, можно приспособить к любой замене символа, или группы символов в большом количестве контентных страниц. Кому не понятно – добро пожаловать в коментарии, обязательно помогу!
The post Регулярные выражение Notepad++ – наше все! first appeared on Блог вебмастера.