Этот сайт использует Яндекс.Метрику для анализа посещаемости. Подробнее
Формулы и функции

Регулярные выражения (RegEx) в Excel: новые функции и интеграция с XLOOKUP

forest_paw 06.09.2025 31

Регулярные выражения (RegEx) в Excel: новые функции и интеграция с ПРОСМОТРХ (XLOOKUP)

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

Три новые функции — REGEXTEST, REGEXEXTRACT и REGEXREPLACE — позволяют проверять, извлекать и заменять текст по сложным шаблонам. Более того, RegEx теперь интегрирован в ПРОСМОТРХ (XLOOKUP) и ПОИСКПОЗX (XMATCH), что делает поиск данных невероятно гибким.

Новые функции RegEx в Excel

Excel представил три основные функции для работы с регулярными выражениями:

  1. REGEXTEST(текст, шаблон) — проверяет, соответствует ли текст заданному шаблону, возвращая ИСТИНА (TRUE) или ЛОЖЬ (FALSE).
  2. REGEXEXTRACT(текст, шаблон, [режим_возврата], [режим_совпадения]) — извлекает часть текста, соответствующую шаблону.
  3. REGEXREPLACE(текст, шаблон, замена, [режим_совпадения]) — заменяет текст, соответствующий шаблону, на указанную строку.

Проверка шаблонов с REGEXTEST

Функция REGEXTEST идеально подходит для быстрой проверки наличия определённых символов или паттернов в ячейке. Например, чтобы проверить, содержит ли текст цифры, используйте:

=REGEXTEST(А2, "\d") (=REGEXTEST(A2, "\d"))

Эта формула вернёт ИСТИНА (TRUE), если в ячейке A2 есть хотя бы одна цифра. Её можно комбинировать с ФИЛЬТР (FILTER) для фильтрации строк по шаблону.

Проверка шаблона символов с помощью REGEXTEST. В столбце B — ряд фраз. Формула в C6: =REGEXTEST(B6,'[0-9]'). Формула возвращает TRUE, когда текст в столбце B содержит цифру.
Проверка шаблона символов с помощью REGEXTEST

Извлечение данных с REGEXEXTRACT

REGEXEXTRACT позволяет извлекать конкретные данные из строки. Например, чтобы получить первое число из текста:

=REGEXEXTRACT(А2, "\d+") (=REGEXEXTRACT(A2, "\d+"))

Здесь \d означает цифру, а + — одну или несколько цифр. Для извлечения нескольких групп (например, ширины и высоты из строки «1280x720») используйте скобки:

=REGEXEXTRACT(А2, "(\d+)x(\d+)", 2) (=REGEXEXTRACT(A2, "(\d+)x(\d+)", 2))
Использование Regex для возврата двух групп. Столбец A содержит предложение с разрешением монитора, например, 'Этот монитор 1280x720'. Код Regex в B3: (\d+)x(\d+). Формула REGEXEXTRACT(A4,$B$3,2) возвращает две ячейки: 1280 и 720.
Извлечение двух групп данных с помощью REGEXEXTRACT

Замена текста с REGEXREPLACE

Функция REGEXREPLACE полезна для маскировки или очистки данных. Например, чтобы скрыть часть номера социального страхования:

=REGEXREPLACE(А2, "\d{3}-\d{2}", "***-**") (=REGEXREPLACE(A2, "\d{3}-\d{2}", "***-**"))
В столбце A — поддельные номера социального страхования. Код Regex в B1 ищет \d{3}-\d{2} (3 цифры, тире, 2 цифры). Формула в B2:B5: =REGEXREPLACE(A2,$B$1,'***-**'). Результат — частично скрытый номер, например, ***-**-4337.
Маскировка данных с помощью REGEXREPLACE

Основы синтаксиса RegEx

Вам не нужно быть программистом, чтобы освоить RegEx. Вот краткий справочник по основным конструкциям:

  • Символы: . — любой символ; \. — точка.
  • Наборы символов: [abc] — a, b или c; [A-Z] — любая заглавная буква.
  • Начало и конец: ^ — начало строки; $ — конец строки.
  • Квантификаторы:
    • * — ноль или более раз
    • + — один или более раз
    • ? — ноль или один раз
    • {3} — ровно три раза
    • {2,4} — от двух до четырёх раз
  • Специальные классы: \d — цифра; \w — буква или цифра; \s — пробельный символ.

Практический пример: очистка неразрывных пробелов

Данные, импортированные из веб-источников, часто содержат неразрывные пробелы (ASCII 160), которые не удаляются функцией СЖПРОБЕЛЫ (TRIM)(). Используйте RegEx для их очистки:

=REGEXREPLACE(А2, "\s", " ") (=REGEXREPLACE(A2, "\s", " "))

Эта формула заменяет все пробельные символы (включая неразрывные пробелы) на обычные пробелы.

RegEx в ПРОСМОТРХ (XLOOKUP) и ПОИСКПОЗX (XMATCH)

Теперь RegEx можно использовать в функциях поиска! В ПРОСМОТРХ (XLOOKUP) и ПОИСКПОЗX (XMATCH) появился новый режим совпадения — 3 (RegEx ПОИСКПОЗ (Match)).

Аргумент Match_Mode в XLOOKUP и XMATCH теперь предлагает варианты: 0 — точное совпадение, -1 — точное или следующее меньшее, 1 — точное или следующее большее, 2 — совпадение по подстановочным знакам, 3 — совпадение по Regex.
Новые режимы совпадения в ПРОСМОТРХ (XLOOKUP) и ПОИСКПОЗX (XMATCH)

Пример: поиск записей по частичному совпадению почтового индекса. Вы можете динамически создавать шаблоны для разных регионов, используя ВЫБОР (CHOOSE)() или таблицы подстановки.

Заключение

Регулярные выражения — один из самых мощных инструментов, добавленных в Excel за последние годы. Они позволяют эффективно обрабатывать, очищать и извлекать данные, а интеграция с ПРОСМОТРХ (XLOOKUP) и ПОИСКПОЗX (XMATCH) делает поиск невероятно гибким. Освоение RegEx требует практики, но результат — значительное повышение производительности и новые возможности для работы с текстом.

Поделиться:

Похожие статьи

Генерация всех комбинаций с помощью функции BASE в Excel
Читать
Определение страны по телефонному номеру в Excel с помощью формулы
Читать
Пользовательские форматы чисел в Excel: полное руководство
Читать

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