Вам нужно получить элементы "пути" отдельно?
1 russia
2 arkhangelskaya-oblast
3 arhangelsk
4 tsentr-goroda
если так, то еще раз предложу использовать stripos для поиска "?detail=1" (там выбирайте сами, можно одно слово detail, если больше в строке не может такое появится, либо detail= (вряд ли у вас будет что-то кроме единицы). После того, как вы убедились, что у вас есть этот параметр, используйте explode с разделителем /
Он вам разложет в массив все ваши параметры. Вы зря так уперлись в регулярные выражения. Для простой проверки наличия метки в строке они абсолютно не нужны, только усложняют понимание и замедляют работу.
1 russia
2 arkhangelskaya-oblast
3 arhangelsk
4 tsentr-goroda
если так, то еще раз предложу использовать stripos для поиска "?detail=1" (там выбирайте сами, можно одно слово detail, если больше в строке не может такое появится, либо detail= (вряд ли у вас будет что-то кроме единицы). После того, как вы убедились, что у вас есть этот параметр, используйте explode с разделителем /
Он вам разложет в массив все ваши параметры. Вы зря так уперлись в регулярные выражения. Для простой проверки наличия метки в строке они абсолютно не нужны, только усложняют понимание и замедляют работу.