Всем привет.
Есть у меня набор ссылок такого вида
people-news/gayd-park-privodyat-v-poryadok/ - ссылка на новость с категорией
news/society/nedorogie-pamyatniki-na-mogilu-eto-ne-znachit-plokhoe-kachestvo/ - ссылка на новость категория + сабкатегория
news/society/ - ссылка на сабкатегорию
news/ - ссылка на категорию
И есть регулярка
(.*)?\/(.*)\/(.*)
, которая разделяет ссылку вида
people-news/gayd-park-privodyat-v-poryadok/ на 2 группы,
people-news - категорию,
gayd-park-privodyat-v-poryadok урл новости
или
news/society/nedorogie-pamyatniki-na-mogilu-eto-ne-znachit-plokhoe-kachestvo/ на 2 группы,
news/society - категорию с сабкатегорию и
nedorogie-pamyatniki-na-mogilu-eto-ne-znachit-plokhoe-kachestvo - урл новости.
На данный момент регулярка работает немного не так как нужно, а именно, 2 первые ссылки которые выше, отрабатывает правильно, ссылку
news/ не отрабатывает - это тоже верно, а вот
news/society/ разделяет на 2 группы, хотя не должна ее отрабатывать и должна пропускать.
Как правило, категории и сабкатегории, то у них названия не особо длинные или какй-то еще определять. Возможно как-то задать минимальное количество символов для категории и сабкатегории, в которые попадали или не попадали они.
Ccылка на тест регулярки
https://regex101.com/r/eSVp1L/1/