Как в regexp не захватывать строку, если она совпадает с шаблоном?
Есть регулярка
^\/CATALOG\/([a-zA-Z0-9-_]+)\/(?:sort-([a-zA-Z0-9-_]+)\/?)?(?:num([0-9]+)\/?)?(?:page([0-9]+)\/?)?(?:[\?&]{1}[\S]*)?$
Она нормально парсит адреса вида
/CATALOG/code/sort-price/num48/page2/
Но надо этой-же регуляркой парсить адрес вида
/CATALOG/sort-price/num48/page2/
Что в текущем виде не выходит, так как sort-price захватывается первой группой. Отсюда вопрос - как мне не захватывать группой ([a-zA-Z0-9-_]+) строки начинающиеся на sort- num и page ?
mozillla: Всё правильно поняли я как раз имел ввиду какие варианты есть, если page может не быть тогда поправим первую регулярку например так https://regex101.com/r/Wvu9XU/1