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

Раньше из регулярных выражений я использовал только (.*) :) Несколько друзей настоятельно советовали мне разобраться в этом вопросе. Но не понимая, где их можно применять, я откладывал это до лучших времен.
Все изменилось, когда мне пришлось более плотно работать с Google ***ytics и Google Tag Manager в Netpeak. Без понимания регулярных выражений сложно представить себе нормальную настройку фильтров, пользовательских сегментов в GA или правил в GTM.
А теперь давайте разберемся, с чего стоит начать изучение регулярных выражений новичку.
Что такое регулярные выражения
Регулярные выражения (regular expressions, RegExp) — наборы символов, применяемых для поиска текстовых строк, соответствующих требуемым условиям. Результат применения регулярного выражения — подмножество данных, отобранное согласно логике, заложенной в выражении. Регулярные выражения применяются в любых задачах по поиску в множестве данных, для которых нужно получать выжимку по определенным правилам.
Синтаксис регулярных выражений
Большинство символов в регулярных выражениях представляют сами себя, за исключением группы специальных символов «[ ] \ / ^ $ . | ? * + ( ) { }». Если эти символы нужно представить в качестве символов текста, их следует экранировать обратной косой чертой «\».
Если эти спецсимволы встречаются без обратной косой черты, значит у них особенные значения в регулярных выражениях:
- «^» — каретка, циркумфлекс или просто галочка. Начало строки;
- « — знак доллара. Конец строки;
- «.» — точка. Любой символ;
- «*» – знак умножения, звездочка. Любое количество предыдущих символов;
- «+» – плюс. 1 или более предыдущих символов;
- «?» – вопросительный знак. 0 или 1 предыдущих символов;
- «( )» – круглые скобки. Группировка конструкций;
- «|» – вертикальная линия. Оператор «ИЛИ»;
- «[ ]» – квадратные скобки. Любой из перечисленных символов, диапазон. Если первый символ в этой конструкции – «^», то массив работает наоборот – проверяемый символ не должен совпадать с тем, что перечислено в скобках;
- «{ }» – фигурные скобки. Повторение символа несколько раз;
- «\» – обратный слеш. Экранирование служебных символов.
Также существуют специальные метасимволы, ими можно заменить некоторые готовые конструкции:
- \b — обозначает не символ, а границу между символами;
- \d — цифровой символ;
- \D — нецифровой символ;
- \s — пробельный символ;
- \S — непробельный символ;
- \w — буквенный или цифровой символ или знак подчеркивания;
- \W — любой символ, кроме буквенного или цифрового символа или знака подчеркивания.
Пять способов протестировать свои знания о регулярных выражениях
При изучении регулярных выражений очень важна пpaктика. Чем больше пpaктикуешься, тем быстрее начинаешь строить нужные конструкции и решать поставленные задачи.
1. Изучаем регулярные выражения в текстовом редакторе
Почти всем новичкам я сразу рекомендую ставить текстовый редактор NotePad++ и начинать тренироваться в нём. Почему именно в этом текстовом редакторе:
- в большинстве случаев спецсимволы не нужно экранировать;
- Notepad++ сохраняет конструкции предыдущих запросов;
- функция «Пометки» наглядно показывает результат поиска по заданной конструкции и позволяет быстро внести правки:
2. Проверяем знания регулярных выражений в Regex
Онлайн-сервис regex101.com позволяет ввести набор данных и регулярное выражение. После этого в наборе данных подсветятся строки, соответствующие выражению. В специальном окне Explanation регулярное выражение разбирается по частям:
Давайте потренируемся: задача — подсветить всю строку полностью. Нужно поставить галочку напротив «multi line».
Тестовые данные:
https://www.site.ru/www.site.com/search?q=widget+thinger https://www.site.com/page1/page2/page3/https://www.site.com/index.php https://www.site.com/products/100.php https://www.site.us/products/101.php https://www.site.com/products/102.php https://www.site.ru/duals/index.html https://www.site.com/ourteam/index.phphttps://www.site.com/ https://site.com/profilehttps://www.site.ru/ua/index.php https://www.site.com/ua/producty/100.php https://www.site.com/ua/producty/101.php https://www.site.com/ua/producty/102.php https://1.site.com/search?q=widget https://www.site.com/search?q=widget+thinger https://www.site.com/search?q=smidges https://www.site.com/index/yy.jpgРегулярные выражения для проверки знаний:
- выбрать все страницы;
- (.*) — любое количество любых символов;
- выбрать все страницы с https;
- ^https.* — все URL, начинающиеся с https;
- все страницы на украинском языке;
- .*/ua/.* — все страницы, в URL которых содержится /ua/. Если использовать просто ua, в выборку попадет https://www.site.com/duals/index.html, это лишнее;
- все индексные страницы;
- .*index\.(php|html) — аналогично прошлому выражению, нельзя просто использовать index;
- все карточки товаров (для русской и украинской версий) ;
- .*product(s|y).* или .*product[sy].* — оба варианта подходят.
3. Тестируем регулярные выражения с помощью Jsfiddle
Jsfiddle — инструмент для экспериментов с JavaScript. В нем можно проверить условия для запуска функции или демонстрации нужных результатов.
В этом примере видно, как на основании регулярных выражений сначала определяется, является ли нажатый элемент ссылкой на файл .pdf или .jpg. После этого для элементов, которые не являются ссылками на файлы, определяются название и цена товара. Все это выясняется, исходя из текстового содержимого элементов.
4. Проверяем ошибки в регулярных выражениях с помощью Google ***ytics
Самый быстрый способ проверить знания о регулярных выражениях в Google ***ytics — фильтры в стандартных отчетах. Зайдите в свой аккаунт и в любом отчете, где доступны фильтры, попробуйте отобрать какой-либо набор данных.
5. Нестандартные методы освоения регулярных выражений
Для тех, кто любит интеpaктив:
Жадные и ленивые кванторы
Кванторы в регулярных выражениях позволяют определить часть шаблона, которая должна повторяться несколько раз подряд. «Жадный» квантор старается захватить наибольший кусок текста, который только может. А «ленивая» версия (добавляется символ-модификатор «?») ищет наименьшее из возможных вхождений.
Жадный квантор (*) захватывает все — от первых кавычек до последних:
Ленивая версия квантора (*?) ищет наименьшее совпадение, поэтому найдет каждую подстроку по отдельности:
Где использовать регулярные выражения
SEO-специалисты прибегают к регулярным выражениям при работе с Google ***ytics, Яндекс.Метрикой, RewriteRule в .htaccess, в текстовых редакторах, при работе с краулерами (Netpeak Spider).
Расскажу о нескольких регулярных выражениях, которые часто мне помогают.
1. Выделить всё, кроме домена:
.*://|/.*Использую, когда есть большой список URL-адресов (например, внешних ссылок) и для анализа нужно вычлeнить только домен. В NotePad++ с помощью функции замены меняю на пустую строку и получаю чистый список доменов:
2. Выделить URL заданной вложенности:
.*://site.com/.*?/.*?/.*?/Здесь конструкция (/.*?/) обозначает один уровень вложенности.
Использую это выражение, когда нужно задать максимально разрешенную вложенность URL при сканировании сайта в Netpeak Spider.
Чтобы просканировать все URL адреса только первого уровня вложенности, в сервисе нужно задать такие настройки:
Что еще почитать о регулярных выражениях
- 8 полезных регэкспов с наглядным разбором;
- Некоторые ошибки при написании регэкспов;
- Регулярные выражения, пособие для новичков (первая, вторая часть) ;
- Истинное могущество регулярных выражений;
- Шпаргалка по регулярным выражениям и объяснения к шпаргалке.
Выводы
Регулярные выражения — полезный, мощный и совершенно бесплатный инструмент для обработки строковых данных и упрощения работы в различных сервисах.
Его достаточно сложно освоить, ещё сложнее научиться правильно применять. Взамен этот инструмент существенно облегчит вашу работу и сделает её гораздо эффективнее.
Набросаем любимых регулярных выражений в комментариях?
Комментарии:
На отклонение исходящих ссылок после загрузки файла может уйти достаточно много времени: от нескольких недель до нескольких месяцев...
01 04 2026 16:41:12
Пpaктика: где искать шаблоны скриптов, как их редактировать и какие есть меры предосторожности при работе со скриптами....
31 03 2026 0:29:55
Рассказываем о перспективном формате рекламы, который привлекает внимание потребителя даже в эпоху повсеместной «баннерной слепоты»....
30 03 2026 5:18:41
Как пользователи и разработчики приложений живут без Google Play? Авторская колонка....
29 03 2026 0:58:19
зеркальные нейроны и сознание. как они влияют на наше поведение?...
28 03 2026 6:21:30
Как добиться эффективности и самоорганизации. Читайте о системе тимлида Netpeak Андрея Коваля....
27 03 2026 2:55:32
Продвижение музыкальной библиотеки. Со старта сотрудничества, трафик и основной ключ сайта клиента вырос в 10 раз. Регион продвижения — США....
26 03 2026 19:51:42
Как правильно оформлять свое портфолио, писать сопроводительные письма и делать посты в соцсетях. С помощью простой человеческой адекватности можно выигрывать у 90% других подрядчиков. Как это использовать? Читайте дальше!...
25 03 2026 20:50:57
Несколько полезных советов перед запуском. Tрaнcпорт и путешествия, ритейл, медиа и развлечения — тематики, в которых чаще используют мобильные приложения. Есть и другие факторы популярности приложений. Узнать!...
24 03 2026 11:26:56
Как внедрить Business Intelligence для малого и среднего бизнеса....
23 03 2026 0:28:55
Как исключить показы на нецелевых площадках в новом интерфейсе Google Ads. В конце статьи 30 000 минус-площадок, каналов YouTube, сайтов, приложений...
22 03 2026 9:47:29
Определение сайта нового типа. Захочет ли бизнес интернета перевести свои веб-приложения на более прогрессивные рельсы?...
21 03 2026 12:46:28
PBN (Private Blog Network) — приватная/частная сеть блогов, сайты-сателлиты, сетки сайтов. Строить их долго, дорого, но это работает....
20 03 2026 10:27:41
Импорт из Google ***ytics в Excel — manual по ***ytics Edge....
19 03 2026 13:35:50
Чтобы обезопасить себя и своих клиентов, используйте технологию 3D Secure. Больше рекомендаций — в статье....
18 03 2026 10:45:33
Чтобы создать позитивный образ компании, бренда, персоны или работодателя в поисковых системах, нужно приложить много усилий. Но, поверьте, результат того стоит. И начать стоит с репутационного аудита....
17 03 2026 17:52:24
Эти данные пригодятся в составлении медиапланов по продвижению в интернете. Понимания стоимость конверсии и необходимое количество конверсий, вы можете прогнозировать, сколько денег на рекламу нужно выделить. Читать!...
16 03 2026 23:29:13
Основатель сервиса мобилографии EyeEm Рамзи Ризк рассказал об особенностях своего сервиса и будущем мобильных приложений....
15 03 2026 11:55:48
Без понимания того, какие данные заложены в основу воронки продаж получается... — читайте в статье...
14 03 2026 0:35:58
Эффективность рекламы в поиске падает, но растут YouTube, контекстно-медийная сеть и другие платформы...
13 03 2026 19:57:33
Гифка — это зациклиненное видеоизображение, рисунок-ролик, крохотный фильм, без которого трудно представить современный сайт. Как быстро создавать гифки и получать профит....
12 03 2026 2:26:44
Оставить заявку на горячей линии МОЗ — это только вершина айсберга. Необходимо провести опрос среди сотрудников компании. И не один. А ещё подготовить несколько помещений для вакцинации и отдыха. Узнать больше!...
11 03 2026 8:38:40
Проведение краудфандинговых кампаний — это бизнес. Это отдельный и вполне серьёзный рынок с уймой заточенных под ваши нужды услуг. Раньше нужно было ждать, пока проект пройдет обязательную проверку сотрудником Kickstarter, сейчас можно запускать кампанию...
10 03 2026 6:38:14
Это не автобиографические романы, не бесплатные учебники и не подборка книжек, чтобы скачать в epub. Это интересная топ литература о маркетинге, которую мы хотим вам посоветовать....
09 03 2026 2:22:38
Всё, что вы хотели знать о функциях вычисляемых полей, но боялись спросить....
08 03 2026 19:11:24
Алгоритм E-A-T теперь следит за экспертностью, авторитетностью и достоверностью контента. Что это значит?...
07 03 2026 13:40:43
Как раскрутить виртуальный магазин женской одежды. Подробно рассказываем, что делали и чего достигли...
06 03 2026 18:36:50
О создании структуры сайта на основе семантического ядра, работе с Xmind и таблицами онлайн...
05 03 2026 23:14:46
Мы запустили email с нуля и стали получать стабильный ежемecячный доход....
04 03 2026 15:31:41
Как и кто создает новые услуги в Netpeak и что нужно знать, уметь, чтобы это делать? Рассказывает Елена Воскобойник, специалист, которая иногда разpaбатывает их почти с нуля. Читать!...
03 03 2026 3:11:44
Как понять, что проект нуждается в новых текстах и сделать читателя счастливым...
02 03 2026 9:41:57
Образец чек-листа по созданию форм заказа на сайте интернет-магазина...
01 03 2026 3:56:20
Почему соотношение данных об использовании приложения важнее, чем количество установок и удалений...
28 02 2026 19:33:38
Инструкция о том, как создать новую кампанию в Bing Ads или импортировать существующую из Google Рекламы? Как добавить способ оплаты? Читайте о первых шагах настройки рекламы в Bing...
27 02 2026 13:58:39
Как настроить эксперимент на сайте без сторонней помощи...
26 02 2026 13:36:55
Проверенные лайфхаки по платному трафику от спикеров и участников конференции 8P 2018...
25 02 2026 5:25:37
Устраняем причины, по которым пользователи покидают сайт без покупки....
24 02 2026 14:23:30
Джефф Безос, Стив Джобс, Билл Гeйтс, Джимм Керри и другие. Собрали для вас подборку крутых выступлений людей, которые знают, как добиться ... в общем-то, всего. Читайте их основные тезисы, а главное — послушайте....
23 02 2026 0:48:36
Важный вопрос, если вы рассчитываете на вирусный эффект своих рекламных идей....
22 02 2026 13:27:54
Узнайте зарплату интернет-маркетологов с новым рейтингом от Serpstat....
21 02 2026 15:12:10
Исправление ошибок в тексте возможно с помощью онлайн-инструментов и стационарных программ...
20 02 2026 3:50:13
Бизнесу следует позаботиться о том, чтобы представить отзывы на всех площадках (как минимум на тех, которые есть на трех страницах выдачи), где только может искать информацию пользователь. Узнать больше!...
19 02 2026 13:43:29
А сейчас про конференцию Netpeak Friends Day для друзей Netpeak Group...
18 02 2026 14:54:25
Как Netpeak работал с сайтом филиала крупного бренда и добился результатов, несмотря на то, что сервера проекта находятся в другой стране....
17 02 2026 8:41:42
Как и зачем мигрировать со старой на новую версию API на языке R. С пакета RAdwords на rgoogleads. Руководство от Алексея Селезнева. Читать дальше!...
16 02 2026 16:36:29
Наибольшее количество онлайн транзакций было получено по брендовым запросам женского белья...
15 02 2026 19:25:30
Владельцы айфонов в странах арабского мира легче расстаются с деньгами за приложения. Вот почему арабская локаль в App Store так привлекательна...
14 02 2026 5:36:43
Трекер — система аналитики мобильного приложения с возможностью отслеживания источника установок. Рассмотрим бесплатные и платные решения для аналитики мобильных приложений....
13 02 2026 16:45:20
Инструкция с применением языка R. Полезно веб-аналитикам, которые работают с крупными интернет-магазинами. Например, на сайте еженедельно появляется примерно 1000 новых наименований и такое же количество позиций переходит в статус «нет в наличии»....
12 02 2026 17:43:54
Будь мобильным — заливай видео на Youtube с телефона...
11 02 2026 3:33:35
Еще:
понять и запомнить -1 :: понять и запомнить -2 :: понять и запомнить -3 :: понять и запомнить -4 :: понять и запомнить -5 :: понять и запомнить -6 :: понять и запомнить -7 ::