Регулярное выражение для номера карты с пробелами
Шаблон для 16 цифр, разделённых пробелами или дефисами по 4.
ПресетСтраница примера инструмента
Регулярное выражение для номера карты с пробелами — поля заполнены примером, их можно менять. Настройки уедут в ссылку «Поделиться», а заголовок страницы и вкладки описывают исходный пресет, а не текущие поля.
Об этом примере
Номер карты с явными разделителями группируют по четыре цифры пробелами или дефисами. Шаблон требует четыре блока по четыре цифры с опциональным разделителем между ними. Тест 4276 3800 1234 5678 — пример с пробелами. Слитная запись или группировка не по четыре отвергаются. Как и в пресете card, алгоритм Луна не проверяется. Используйте этот вариант, когда интерфейс сам расставляет пробелы при вводе номера карты пользователем.
Флаги пишутся подряд, без запятой и без пробелов. Поддерживаются g (все совпадения), i (без учёта регистра), m (^ и $ в каждой строке), s (. включает перевод строки), u (режим Unicode), y (поиск с позиции lastIndex), v (наборы Unicode вместо одиночных классов) и d (индексы начала совпадений). Порядок не важен: «giu» и «ug» — одно и то же.
Объяснение
Начало строки затем цифра (ровно 4 раз) затем один из пробельный символ, '-' (необязательно) (ровно 3 раз) затем цифра (ровно 4 раз) затем конец строки
Диаграмма выражения
Railroad — структура AST: терминалы, ветки и петли. NFA — переходы между состояниями автомата, ε-переходы отмечены пунктиром.
Подсветка токенов
Цвет показывает роль фрагмента: литерал, класс, квантор, группа и т.д.
Live-тест
Готовые регулярки
Каталог регулярок →Найдено: 66 из 66
- Регулярное выражение для email
[^@\s]+@[^@\s]+\.[a-z]{2,} - Регулярное выражение для телефона РФ
^(\+7|8)[\s(-]*\d{3}[\s)-]*\d{3}[\s-]*\d{2}[\s-]*\d{2}$ - Регулярное выражение для URL
^https?://[^\s/$.?#].[^\s]*$ - Регулярное выражение для IPv4
^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$ - Регулярное выражение для даты ISO
^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$ - Регулярное выражение для даты РФ
^(0[1-9]|[12]\d|3[01])\.(0[1-9]|1[0-2])\.(\d{4})$ - Регулярное выражение для времени HH:MM
^([01]\d|2[0-3]):[0-5]\d$ - Регулярное выражение для ИНН
^(\d{10}|\d{12})$ - Регулярное выражение для СНИЛС
^\d{3}-\d{3}-\d{3} \d{2}$ - Регулярное выражение для номера карты
^\d{4}[\s-]?\d{4}[\s-]?\d{4}[\s-]?\d{4}$ - Регулярное выражение для UUID
^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$ - Регулярное выражение для slug
^[a-z0-9]+(?:-[a-z0-9]+)*$ - Регулярное выражение для HEX-цвета
^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$ - Регулярное выражение для MAC-адреса
^([0-9a-f]{2}[:-]){5}[0-9a-f]{2}$ - Регулярное выражение для IPv6
^(?:[0-9a-f]{4}:){7}[0-9a-f]{4}$ - Регулярное выражение для Base64
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$ - Регулярное выражение для semver-версии
^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$ - Регулярное выражение для времени HH:MM:SS
^([01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d{1,3})?$ - Регулярное выражение для JWT
^[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]*$ - Регулярное выражение для MIME-типа
^[a-zA-Z0-9!#$&\-^_.+]+/[a-zA-Z0-9!#$&\-^_.+]+(?:;\s*[a-zA-Z0-9!#$&\-^_.+]+=(?:"[^"]*"|[^;"]+))*$ - Регулярное выражение для пути файловой системы
^(?:/[\w.\-]+)+/?$|^\.{0,2}(?:/[\w.\-]+)*/?$|^[\w.\-]+(?:/[\w.\-]+)*/?$ - Регулярное выражение для JSON-строки
^"(?:[^"\\\x00-\x1F]|\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4}))*"$ - Регулярное выражение для многострочного комментария
^/\*[\s\S]*?\*/$ - Регулярное выражение для cron-выражения
^\S+\s+\S+\s+\S+\s+\S+\s+\S+$ - Регулярное выражение для маркера SQL-инъекции
\b(?:union\s+select|select\s+.+\s+from|or\s+1\s*=\s*1|and\s+1\s*=\s*1|--|/\*|;\s*drop\s+table|'\s*or\s*') - Регулярное выражение для GUID Microsoft
^\{?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\}?$ - Регулярное выражение для IPv6-CIDR
^(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}/(?:\d{1,2}|1[0-1]\d|12[0-8])$ - Регулярное выражение для числа с разделителями
^[+-]?\d{1,3}(?:[,\s]\d{3})+(?:\.\d+)?$|^[+-]?\d+(?:\.\d+)?$ - Регулярное выражение для отрицательного числа
^-[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ - Регулярное выражение для шестнадцатеричной строки
^(?:[0-9a-fA-F]{2}[\s-]?)+[0-9a-fA-F]{2}$|^(?:[0-9a-fA-F]{2})+$ - Регулярное выражение для HTML-тега
^<(\w+)(?:\s+[^>]*)?>.*?<\/\1>$ - Регулярное выражение для HTML-комментария
<!--[\s\S]*?--> - Регулярное выражение для CSS-цвета в hex
#([0-9a-fA-F]{3}){1,2}\b - Регулярное выражение для Markdown-ссылки
\[([^\]]+)\]\(([^)\s]+)(?:\s+"[^"]*")?\) - Регулярное выражение для query-string параметра
[?&]([\w-]+)=([^&]+) - Регулярное выражение для международного телефона
^\+[1-9]\d{6,14}$ - Регулярное выражение для email по RFC 5322 (упрощённое)
^[A-Za-z0-9!#$%&'*+/=?^_`{|}~.-]+@[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?(?:\.[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?)+$ - Регулярное выражение для IPv4-CIDR
^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\/(?:3[0-2]|[12]?\d)$ - Регулярное выражение для полного IPv6
^(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$ - Регулярное выражение для доменного имени
^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$ - Регулярное выражение для TCP-порта
^([1-9]\d{0,3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$ - Регулярное выражение для hostname
^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,63}$ - Регулярное выражение для email-заголовка
^[A-Za-z0-9-]+:\s.+$ - Регулярное выражение для UUID v4
^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$ - Регулярное выражение для ISBN-13
^(?:978|979)-\d{1,5}-\d{1,7}-\d{1,7}-\d$ - Регулярное выражение для ORCID
^\d{4}-\d{4}-\d{4}-\d{3}[\dX]$ - Регулярное выражение для IBAN
^[A-Z]{2}\d{2}[A-Z0-9]{1,30}$ - Регулярное выражение для VIN
^[A-HJ-NPR-Z0-9]{17}$ - Регулярное выражение для римского числа
^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$ - Регулярное выражение для двоичного числа
^[01]+$ - Регулярное выражение для восьмеричного числа
^0[0-7]+$ - Регулярное выражение для экспоненциальной формы
^[+-]?(\d+(\.\d*)?|\.\d+)([eE][+-]?\d+)?$ - Регулярное выражение для процента
^(?:100(?:\.0+)?|\d{1,2}(?:\.\d+)?|\.\d+|[0-9]\d?(?:\.\d+)?)%$ - Регулярное выражение для номера карты с пробелами
^(?:\d{4}[\s-]?){3}\d{4}$ - Регулярное выражение для SWIFT/BIC
^[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?$ - Регулярное выражение для биржевого тикера
^[A-Z]{1,5}$ - Регулярное выражение для ISO-кода валюты
^[A-Z]{3}$ - Регулярное выражение для bcrypt-хеша
^\$2[aby]\$\d{2}\$[./A-Za-z0-9]{53}$ - Регулярное выражение для SHA-256
^[a-f0-9]{64}$ - Регулярное выражение для SHA-1
^[a-f0-9]{40}$ - Регулярное выражение для MD5
^[a-f0-9]{32}$ - Регулярное выражение для даты и времени ISO 8601
^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})?$ - Регулярное выражение для даты RFC 822
^[A-Za-z]{3}, \d{1,2} [A-Za-z]{3} \d{4} \d{2}:\d{2}:\d{2} [+-]\d{4}$ - Регулярное выражение для Unix timestamp
^\d{10}$ - Регулярное выражение для ISO 8601 duration
^P(?!$)(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+(?:\.\d+)?S)?)?$ - Регулярное выражение для ISO-недели
^\d{4}-W(0[1-9]|[1-4]\d|5[0-3])$