ТОП-40 РЕГУЛЯРНЫХ ВЫРАЖЕНИЙ
Для блока "Формы ввода" в PuzzleBot
Подойдет и для мини-приложений, и для простых форм ввода
🤔 Что такое регулярное выражение?
В PuzzleBot есть несколько способов проверить ответ пользователя:
1️⃣ Через команду «Условие» — вы создаете отдельную ветку логики
2️⃣ Через формулу в самом блоке «Форма ввода» — самый удобный способ! ✅
👉 Вы задаете жесткие условия с помощью регулярного выражения, и система автоматически проверяет ответ:
1. Дата в формате ДД.ММ.ГГГГ
Формула: ^(0[1-9]|[12][0-9]|3[01])\.(0[1-9]|1[0-2])\.(19|20)\d{2}$
Примечание: Идеально для дней рождения. Проверяет не только формат, но и корректность месяца (01-12)
2. Номер телефона (Россия)
Формула: ^(\+7|8)?[\s-]?\(?\d{3}\)?[\s-]?\d{3}[\s-]?\d{2}[\s-]?\d{2}$
Примечание: Приводит номера +7 (999) 123-45-67, 89991234567 к единому проверенному формату
3. Email-адрес (универсальный)
Формула: ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
Примечание: Базовая проверка, что введенная строка похожа на email (содержит @ и точку после домена).
4. ФИО (только русские буквы и пробелы)
Формула: ^[А-ЯЁ][а-яё]+(?:\s[А-ЯЁ][а-яё]+)+$
Примечание: Требует как минимум два слова с заглавной буквы. Отлично подходит для «Иванов Иван Петрович».
5. Цена / Сумма (только цифры)
Формула: ^\d+$
Примечание: Гарантирует, что пользователь ввел только целое число без пробелов, точек и букв (например, "150000").
6. URL-адрес веб-сайта
Формула: ^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$
Примечание: Проверяет, что ссылка имеет корректную структуру (например, https://vc.ru)
7. Пароль (минимум 8 символов, буквы и цифры)
Формула: ^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$
Примечание: Требует, чтобы пароль содержал хотя бы одну букву и одну цифру, общая длина не менее 8 символов.
8. Индекс (российский, 6 цифр)
Формула: ^\d{6}$
Примечание: Проверяет, что введено ровно 6 цифр (например, "101000").
9. Время в формате ЧЧ:ММ
Формула: ^([01]\d|2[0-3]):([0-5]\d)$
Примечание: Принимает время от 00:00 до 23:59. Полезно для записи на услуги.
10. IP-адрес (IPv4)
Формула: ^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$
Примечание: Проверяет корректность IP-адреса в формате 192.168.1.1.
11. Только латинские буквы (без цифр)
Формула: ^[A-Za-z]+$
Примечание: Для ввода названий брендов или кодов, которые должны содержать только английские буквы.
12. Только буквы и цифры (без спецсимволов)
Формула: ^[a-zA-Z0-9]+$
Примечание: Полезно для логинов или артикулов, где разрешены только латиница и цифры.
13. Год в формате YYYY (1900-2099)
Формула: ^(19|20)\d{2}$
Примечание: Ограничивает ввод года четырьмя цифрами в диапазоне от 1900 до 2099.
14. Номер банковской карты (16 цифр)
Формула: ^\d{16}$
Примечание: Простая проверка, что введено 16 цифр подряд (без пробелов и дефисов).
15. ИНН физического лица (12 цифр)
Формула: ^\d{12}$
Примечание: Проверяет, что введено ровно 12 цифр.
16. ИНН юрлица
Формула: ^\d{10}$
Примечание: Проверяет, что введено ровно 10 цифр.
17. СНИЛС (формат XXX-XXX-XXX XX)
Формула: ^\d{3}-\d{3}-\d{3}\s\d{2}$
Примечание: Российский страховой номер. Пример: 123-456-789 00
18. Серия и номер паспорта РФ
Формула: ^\d{4}\s?\d{6}$
Примечание: 4 цифры серии, пробел (опционально), 6 цифр номера. Пример: 1234 567890
19. БИК банка (9 цифр)
Формула: ^\d{9}$
Примечание: Банковский идентификационный код — ровно 9 цифр
20. Время в формате ЧЧ:ММ:СС
Формула: ^([0-1]\d|2[0-3]):([0-5]\d):([0-5]\d)$
Примечание: Проверяет время с секундами, например, 23:59:59
21. Возраст (от 18 до 99 лет)
Формула: ^(1[8-9]|[2-9][0-9])$
Примечание: Полезно для проверки совершеннолетия
22. Только кириллица (с пробелами)
Формула: ^[А-Яа-яёЁ\s]+$
Примечание: Только русские буквы и пробелы
23. Удалить HTML-теги (для очистки)
Формула: /<[^>]*>/g
Примечание: Не для валидации, а для обработки текста — убирает все теги
24. Запрет на спецсимволы в имени файла
Формула: ^[^\/:*?"<>|]+$
Примечание: Исключает символы, запрещенные в файловых системах Windows.
25. Високосный год
Формула: \b(19|20)([02468][048]|[13579][26])\b
Примечание: Находит високосные годы
26. Дата с русским месяцем
Формула: ^\d{1,2}\s(января|февраля|марта|апреля|мая|июня|июля|августа|сентября|октября|ноября|декабря)\s\d{4}$
Примечание: Например: 15 марта 2024
27. Telegram username
Формула: ^@[a-zA-Z0-9_]{5,32}$
Примечание: От 5 до 32 символов, начинается с @
28. Первая буква заглавная
Формула: ^[А-ЯЁA-Z].*$
Примечание: Любой язык
29. Запрет на цифры
Формула: ^\D+$
Примечание: Только не-цифры
30. Запрет на пробелы
Формула: ^\S+$
Примечание: Без пробелов
31. VIN номер (17 символов)
Формула: ^[A-HJ-NPR-Z0-9]{17}$
Примечание: Без I, O, Q
32. Steam ID (64-bit)
Формула: ^7656119\d{10}$
Примечание: 17 цифр, начинается с 7656119
33. Discord тэг
Формула: ^.{2,32}#\d{4}$
Примечание: Имя#0000
34. Четное число (включая отрицательные)
Формула: ^-?\d*[02468]$
Примечание: Проверяет, что число заканчивается на четную цифру (0, 2, 4, 6, 8). Необязательный минус в начале позволяет работать с отрицательными числами. Минус данного метода в том, что он пропустит число "0", которое также является четным
35. Нечетное число (включая отрицательные)
Формула: ^-?\d*[13579]$
Примечание: Работает по тому же принципу, что и для четных чисел, но проверяет окончание на нечетную цифру (1, 3, 5, 7, 9)
36. Минимальная длина строки (на примере 3 символов)
Формула: ^.{3,}$
Примечание: Квантификатор {3,} означает "не менее 3 повторений предыдущего символа". Здесь символ . означает "любой символ", поэтому строка должна содержать минимум 3 любых символа. Для другого числа замените 3 на нужное
37. Максимальная длина строки (на примере 10 символов)
Формула: ^.{,10}$
Примечание: Квантификатор {,10} означает "не более 10 повторений". Эта строка подойдет для строк длиной от 0 до 10 символов. Чтобы потребовать хотя бы один символ, можно использовать комбинацию: ^.{1,10}$
38. Квартал года (Q1, Q2, Q3, Q4)
Формула: ^Q[1-4]$
Примечание: Очень простая проверка для строк вида "Q1", "Q2", "Q3", "Q4". Буква Q в начале, затем цифра от 1 до 4.
39. Период дат ДД.ММ.ГГГГ - ДД.ММ.ГГГГ
Формула: ^(0[1-9]|[12][0-9]|3[01])\.(0[1-9]|1[0-2])\.\d{4}\s-\s(0[1-9]|[12][0-9]|3[01])\.(0[1-9]|1[0-2])\.\d{4}$
Примечание: Это выражение проверяет формат двух дат, разделенных пробелом, тире и пробелом. Оно корректно проверяет дни (01-31) и месяцы (01-12), но не проверяет корректность года (например, 31 февраля или високосность). Эту проверку лучше делать программно
40. Временной интервал ЧЧ:ММ - ЧЧ:ММ
Формула: ^([01]\d|2[0-3]):([0-5]\d)\s-\s([01]\d|2[0-3]):([0-5]\d)$
Примечание: Проверяет формат "10:30 - 18:00". Часы от 00 до 23, минуты от 00 до 59
Нужна помощь в настройке?
Подписывайтесь на наш Telegram-канал @ecodetechinfo, где мы регулярно публикуем новые руководства, обновления и лучшие практики по созданию и монетизации Telegram ботов.