Yo creo que si es lo que estás buscando, el valor que estás tratando de extraer corresponde al formato de variables de una URL.
Para eso está parse_url(), extrae dichos valores y los agrupa en un arreglo, de ahí ya puedes acceder al índice que necesitas.
Además si quieres seguir intentando con RegExp debo decir que es otro lenguaje y la mecánica para extraer valores tiene su chiste, por favor consulta el manual de PHP para que veas como se capturan y extraen valores.
Pero de verdad, podrás decir que no es lo que buscas pero me gustaría escuchar tus argumentos, ya que estoy completamente seguro de que parse_url() soluciona tu problema.
Así que tu dices, recuerda que esto también es un foro de debate y de verdad me gustaría conocer tus argumentos al respecto de lo que estás buscando y por qué parse_url() no te sirve.