Как работает шаблон
| Часть | Значение |
|---|---|
[a-z0-9]+ | Одна или несколько строчных латинских букв или цифр |
(?:-[a-z0-9]+)* | Любое количество последующих слов, каждое после одного дефиса |
^…$ | Вся строка целиком — поэтому в начале, в конце и подряд не допускаются дефисы |
Примеры кода
JavaScript
const re = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
re.test(value); // true or falsePython
import re
bool(re.fullmatch(r'[a-z0-9]+(?:-[a-z0-9]+)*', value))PHP
preg_match('/^[a-z0-9]+(?:-[a-z0-9]+)*$/', $value) === 1;
Примечания и ограничения
Превращайте заголовки в slug с помощью Генератора slug.
Тестер регулярных выражений
Введите шаблон и смотрите, как совпадения подсвечиваются прямо в тестовом тексте.
Часто задаваемые вопросы
Какое регулярное выражение используется для URL slug?
/^[a-z0-9]+(?:-[a-z0-9]+)*$/ — шаблон проверяет всю строку целиком. Что делает каждая часть, см. в таблице выше.
Какие примеры совпадают?
Из проверенных примеров совпадают: regex-tester, hello-world-2026, a. Остальные — нет.
Как протестировать это регулярное выражение?
Нажмите «Открыть в Regex Tester» — шаблон, флаги и примеры текста загрузятся автоматически, а совпадения будут подсвечиваться по мере редактирования.