🧩 Регулярные выражения: магия поиска в коде

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

Разработка

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

Регулярное выражение — это строка, описывающая шаблон поиска. Оно состоит из символов и спецзнаков, которые задают, что именно мы ищем.

Если совсем просто:
👉 это как умная маска поиска, которая находит то, что соответствует определённой структуре.

/hello/

Такое выражение найдёт слово "hello" в любом тексте.

🛠 Как это работает?

const text = "Привет, меня зовут Кодик!";
const result = /Кодик/.test(text);
console.log(result); // true

Метод .test() проверяет, есть ли совпадение с шаблоном. Если да — вернёт true.

🔍 Построчный разбор:

const text = "Привет, меня зовут Кодик!";
Мы создаём переменную text, в которой хранится обычная строка. Это наш "текст", в котором мы будем искать совпадение.

👉 Внутри строки есть слово Кодик — именно его мы и хотим найти.

const result = /Кодик/.test(text);
Здесь происходит самое интересное:

  • /Кодик/ — регулярное выражение, ищущее точное совпадение слова Кодик.

  • .test(text) — метод, который:

    • принимает строку text

    • проверяет, есть ли в ней совпадение с шаблоном

    • возвращает true, если совпадение найдено, иначе false

🧠 В нашем случае — слово Кодик действительно есть в тексте, поэтому результат будет true.

console.log(result); // true
Здесь мы просто выводим результат проверки в консоль:

  • Если Кодик найден — в консоли будет true

  • Если бы его не было — было бы false

💬 Можно сказать иначе:

Ты говоришь браузеру:
"Эй, посмотри, есть ли в этом тексте слово 'Кодик'? Если да — скажи мне true"

И JavaScript, как верный помощник, говорит: ✅ Да, есть! — true

🧪 Полезные конструкции

Синтаксис

Что делает

Пример

.

Любой один символ

/c.t/ найдёт "cat", "cut"

*

Ноль или больше повторений

/lo*/ найдёт "l", "looo"

+

Один или больше

/lo+/ найдёт "lo", "loo"

?

0 или 1 раз

/colou?r/ — "color" и "colour"

\d

Любая цифра

/\d\d/ — две цифры подряд

\w

Буква, цифра или _

/\w+/ — любое слово

^

Начало строки

/^Привет/

$

Конец строки

/Кодик!$/

🧠 Пример: проверка email

const email = "test@example.com";
const pattern = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
console.log(pattern.test(email)); // true

Что происходит:

  • ^ и $ — начало и конец строки

  • [^\s@]+ — хотя бы один символ, кроме пробела и @

  • @ — обязательно присутствует

  • \. — точка перед доменом (экранирована!)

  • + — снова повторение

🧠Где применяются регулярки?

💡 Область применения

📋 Что делают регулярки

Валидация форм

Проверяют email, пароли, номера телефонов и другие поля ввода

Поиск и замена в тексте

Находят шаблоны и заменяют их на нужное

Разбор логов, CSV, HTML

Извлекают нужные данные из строк, тегов и структурированных файлов

Написание линтеров и парсеров

Помогают анализировать код и находить ошибки или стилистические отклонения

Быстрый поиск по коду или документации

Находят нужные функции, переменные, шаблоны по структуре

Регулярные выражения — это как язык волшебников для работы с текстом. Сначала пугает, потом — радует! Пробуй, играйся, пиши шаблоны. А чтобы практиковаться с удовольствием — загляни в приложение Кодик 🐾

Кодик — это приложение для изучения программирования: курсы по HTML, CSS, JavaScript и Python с простыми объяснениями и практикой, которая действительно запоминается.
💻 Учись в удовольствие: https://itcodik.com/