... > JavaScript > Регулярные выражения RegEx...

Регулярные выражения RegEx в JavaScript

НАВИГАЦИЯ ПО СТРАНИЦЕ

Создание регулярного выражения Поиск совпадений Поиск всех совпадений Замена совпадений Модификаторы и метасимволы

Регулярные выражения (RegEx) — мощный инструмент для поиска и сопоставления текстовых шаблонов в строках. Они используются в JavaScript (и во многих других языках) для обработки текстовой информации. Давайте рассмотрим основы работы с регулярными выражениями.

Создание регулярного выражения

Регулярные выражения в JavaScript создаются, используя литерал регулярного выражения, заключенный в два слэша (`/`).

Пример:

const regex = /pattern/;

Поиск совпадений

Вы можете использовать метод match строки для поиска совпадений с регулярным выражением. Этот метод возвращает массив с найденными совпадениями.

Пример:

const text = 'Это пример текста с шаблоном.';
const pattern = /шаблон/;

const matches = text.match(pattern);
console.log(matches); // Выведет ["шаблон"]

Поиск всех совпадений

Для поиска всех совпадений в тексте, вы можете использовать метод exec в цикле.

Пример:

const text = 'Это пример текста с шаблоном шаблоном.';
const pattern = /шаблон/g;

let match;
while ((match = pattern.exec(text)) !== null) {
  console.log(`Найдено: ${match[0]}, Индекс: ${match.index}`);
}

Замена совпадений

Метод replace строки позволяет заменить совпадения с регулярным выражением на указанную строку.

Пример:

const text = 'Это пример текста с шаблоном.';
const pattern = /шаблон/;

const replacedText = text.replace(pattern, 'замена');
console.log(replacedText); // Выведет "Это пример текста с заменой."

Модификаторы и метасимволы

Регулярные выражения могут содержать модификаторы и метасимволы, которые расширяют их возможности. Например, i делает поиск регистронезависимым, g ищет все совпадения вместо первого, а метасимволы, такие как . и *, представляют любой символ и ноль или более повторений соответственно.

Примеры:

const text = 'Это Пример текста с примером.';
const pattern = /пример/gi;
const matches = text.match(pattern); // Ищет "пример" независимо от регистра

const emailPattern = /[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}/;

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