Regex для URL Slug (ЧПУ)

Стандартный шаблон человекопонятного URL (ЧПУ / slug): строчные буквы и цифры, разделенные дефисами, без двойных тире в начале и конце.

/

⚡ Интерактивная проверка на лету

Результат проверки: MATCH ✓

Разбор структуры шаблона

  • • ^[a-z0-9]+ — начинается со строчной буквы или цифры
  • • (?:-[a-z0-9]+)*$ — группа дефис плюс буквы/цифры может повторяться

Примеры использования в коде

JavaScript
const slugRegex = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
const isValid = slugRegex.test(slug);
Python
import re
pattern = r"^[a-z0-9]+(?:-[a-z0-9]+)*$"
is_valid = bool(re.match(pattern, slug))
Go (Golang)
matched, err := regexp.MatchString(`^[a-z0-9]+(?:-[a-z0-9]+)*$`, slug)
PHP
$isValid = preg_match('/^[a-z0-9]+(?:-[a-z0-9]+)*$/', $slug);

Открыть полный инструмент: Открыть полный Regex Тестер →

Вопросы и ответы

Как работает регулярное выражение для URL Slug (ЧПУ)?

Стандартный шаблон человекопонятного URL (ЧПУ / slug): строчные буквы и цифры, разделенные дефисами, без двойных тире в начале и конце. Готовый шаблон: ^[a-z0-9]+(?:-[a-z0-9]+)*$

Как использовать этот regex в JavaScript и Python?

В JavaScript: new RegExp("^[a-z0-9]+(?:-[a-z0-9]+)*$").test(input). В Python: re.match(r"^[a-z0-9]+(?:-[a-z0-9]+)*$", input).

Где можно протестировать регулярное выражение с подсветкой групп?

Да, запустите наш полнофункциональный Regex Тестер с подсветкой групп совпадений, работающий 100% локально в браузере.

🔗 Поделиться страницей

TelegramWhatsAppX