Backend — набор 1
Backend · терминов: 10 · усвоено: 0
Экран 1 из 10Войдите, чтобы сохранять прогресс и получать баллы
regex
Частота: очень высокая · Сложность: 3/5 · стабильно
Regex (регулярное выражение) — формальный язык шаблонов для поиска, проверки и замены подстрок в тексте.
Регулярное выражение описывает множество строк через метасимволы: квантификаторы (*, +, {n,m}), классы символов ([a-z], \d, \w), группы и альтернативы (|), а также якоря ^ и $. Regex поддерживается почти во всех языках — JavaScript (RegExp), Python (модуль re), Java, Go (RE2), Perl — и в утилитах grep, sed, awk, поэтому входит в базовый инструментарий разработчика, тестировщика и администратора. Основные сценарии: валидация ввода (email, телефон, ISBN), парсинг логов и конфигов, массовые замены, извлечение данных из неструктурированного текста. Главные подводные камни — катастрофический бэктрекинг (ReDoS), различия в диалектах (PCRE, POSIX, RE2) и низкая читаемость, поэтому сложные шаблоны рекомендуют комментировать или заменять парсером.
Примеры употребления
Валидация телефона в JS: /^\+?\d{1,3}[- ]?\d{3}[- ]?\d{2}[- ]?\d{2}$/.test(phone)
Поиск ошибок в логе: grep -E "ERROR|FATAL" app.log
Python: re.sub(r'\s+', ' ', text) — нормализация пробелов в строке
Проверка regex на катастрофический бэктрекинг: тестировать шаблон в regex101 или с таймаутом в pytest
#строки#шаблоны#валидация#парсинг
Источники
https://api.stackexchange.com/2.3/tags?order=desc&sort=popular&site=stackoverflow&pagesize=67https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressionshttps://en.wikipedia.org/wiki/Regular_expressionПолная карточка в словаре — открыть в новой вкладке ↗
