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

Сокращение от регулярного выражения, регулярное выражение — это удобный способ создания шаблонов, которые помогают сопоставлять, находить и управлять текстом. Если вы хотите изучить регулярное выражение, лучше всего начать с простого и расширять свои знания по мере того, как вам понадобятся более мощные выражения.

Поначалу примеры с регулярными выражениями могут показаться иностранным языком. Просто просмотр шпаргалки по регулярным выражениям не поможет; сначала вам нужно понять, где использовать регулярное выражение и почему вы хотите его использовать.

Мы предоставим вам руководство по регулярным выражениям для начинающих, удобную памятку по регулярным выражениям и расскажем о некоторых приложениях, которые помогут вам в этом.

Что делает регулярное выражение?

Цель регулярных выражений не в том, чтобы кодировать полные программы. Вместо этого это метод получения данных из массивных текстов. Это полезно для многих самых популярных сегодня языков программирования, таких как Java, JavaScript, языки на основе C, Perl, Python, Delphi, Ruby, R и многих других.

Если вы раньше использовали HTML, вероятно, будет справедливо сказать, что регулярное выражение во многом похоже на разметку. Он использует якоря, квантификаторы, операторы, классы и флаги, чтобы помочь вам проанализировать, что находится в тексте, который вы просите его найти.

Выражение регулярного выражения действительно пытается найти то, что вы просили его найти. Когда есть совпадение с регулярным выражением, это проверка правильности вашего выражения. Вы можете просто ввести «set» в парсер регулярных выражений, и он найдет слово «set» в первом предложении. Вы также можете использовать «st» в синтаксическом анализаторе, который найдет все слова, начинающиеся с «s» и заканчивающиеся на «t». Если вам приходится иметь дело с огромным количеством текста, это спасение.

Начало работы с регулярным выражением

Имейте в виду, что регулярное выражение — это выражение. Он предназначен для использования в вашем коде как выражение, а не как язык кодирования.

Отличным инструментом для начала работы с регулярными выражениями является Expressions, приложение для Mac, которое предоставляет автономную изолированную среду для работы с регулярными выражениями. Он имеет подсветку регулярных выражений, чтобы показать ваши совпадения, минималистичный интерфейс и удобную справочную таблицу на кончиках ваших пальцев. Также есть очень четкий предварительный просмотр для сопоставления регулярных выражений.

Регулярное выражение выражений

✕ Удалить баннер приложения

Теперь давайте перейдем к шпаргалке по регулярным выражениям!

Памятка по регулярным выражениям

Вот очень простая шпаргалка по регулярному выражению:

Якоря

  • \A — Начало строки
  • \Z — Конец строки
  • \b — граница слова
  • \B — Не граница слова
  • \< — Начало слова
  • \> — Конец слова
  • | — Соответствует предыдущему ИЛИ следующему символу
  • ^Here — соответствует любой строке, начинающейся с «Здесь».
  • Finish$ – Соответствует любой строке, оканчивающейся на “finish”
  • ^Here Finish$ — соответствует любой строке, начинающейся с «Здесь» и заканчивающейся на «конец».
  • здесь — соответствует любой строке с «здесь» в строке

Имейте в виду, что регулярное выражение чувствительно к регистру. Если бы вы напечатали «Здесь» вместо «Здесь», это нашло бы применение только «Здесь», написанному с большой буквы. количественные показатели

  • xyz* — Соответствует строкам, содержащим xy, но не обязательно z.
  • xyz+ — Соответствует строкам, в которых xy сопровождается хотя бы одним z.
  • хиз? – Соответствует строкам, содержащим xy и ноль или единицу z.
  • xyz{2} – Соответствует строкам, в которых xy сопровождается ровно двумя z.
  • xyz{2, } — Соответствует строкам, в которых xy сопровождается двумя или более z.
  • xyz{2, 8} – Соответствует строкам, в которых xy сопровождается как минимум двумя z и до восьми z.
  • x(yz)* – Соответствует строкам, в которых за x следует нуль или более значений yz.
  • X(yz){2, 8} — Соответствует строкам, в которых за x следует от двух до восьми использований последовательности yz.

Как видите, наши примеры регулярных выражений становятся немного сложнее — почти математическими! Теперь давайте перейдем к операторам, которые могут значительно расширить возможности анализа регулярных выражений.

Операторы

  • x(yz) — Соответствует строкам, в которых за x следует либо y, либо z.

С помощью оператора «или» вы можете начать захват последовательностей, которые могут немного отличаться. Допустим, в основном тексте вы обсуждали десерты. Ваши пальцы двигались слишком быстро, и половину времени вы печатали «dessetrs»; вместо того, чтобы читать все это, вы можете использовать оператор «или», чтобы обнаружить свои ошибки: e(rt).

Проблема здесь в том, что вы также найдете массу других слов. В абзаце выше вы получите «оператор» и «были» вместе со многими другими словами. Мы можем решить это всего за минуту.

Во-первых, еще один оператор регулярного выражения:

  • Икс[yz] Соответствует строкам, в которых совпадает x, но не y и z.

Использование этого также вернет много совпадений. Он найдет в вышеупомянутом абзаце все, что включает в себя «et» или «er», включая ваше ошибочное слово «dessetrs», а также «desserts» и другие слова, такие как «discover».

Итак, как мы можем найти слово ошибки и заблокировать остальные?

Классы персонажей

  • \d — соответствует одному символу, который является цифрой.
  • \w — соответствует одиночному символу, который является символом слова (без цифр).
  • \s — соответствует любому пробельному символу.
  • . – Соответствует любому символу.
  • \t — соответствует любой вкладке.
  • \r — соответствует любому возврату.

В механизме регулярных выражений вы можете ввести «et» и найти слово ошибки «dessetrs», но оно также покажет «let’s». Если бы это был массивный текст, кто знает, сколько раз вы встречали бы подобное слово «et».

Но вы также можете использовать классы символов. Если мы введем ‘et\w’ в анализатор регулярных выражений, он вернет наше слово ошибки — и только наше слово ошибки! Наконец, правильное регулярное выражение для наших нужд.

Инструменты для изучения, создания и тестирования RegEx

Regex удобен для начинающих и действительно полезен, когда вы начинаете возиться с его широким набором функций и возможностей.

Вот почему мы действительно предлагаем приложение Regex, такое как Expressions. Он обеспечивает безопасную среду для изучения регулярных выражений, не беспокоясь о том, чтобы что-то испортить. Мы также большие поклонники TeaCode и CodeRunner; все три создают надежную среду кодирования.

Вы можете ускорить кодирование с помощью TeaCode, текстового расширителя для Mac, и плагинов для таких IDE, как Atom, Visual Studio Code, JetBrains и Sublime Text. Он имеет более 80 готовых к использованию расширителей шорткодов, которые превращаются в код, который можно скомпилировать в вашей среде IDE.

Расширители шорткодов приложений TeaCode

✕ Удалить баннер приложения

Если вы ищете действительно удобную легкую IDE для Mac, CodeRunner может быть именно тем, что вы ищете. Он поддерживает более 25 языков и 230 средств подсветки синтаксиса и поставляется в знакомом формате с боковыми панелями и параметрами настройки, которые подойдут любому.

Приложение CodeRunner для написания и запуска кода

✕ Удалить баннер приложения

Они также доступны бесплатно в рамках семидневной пробной версии Setapp, которая стоит всего 9,99 долларов в месяц после окончания пробного периода. Так что попробуйте!

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *