sia la mia sia la tua hanno dei difetti, più che altro non raggiungono lo scopo perchè non estrapolano l'url, che da quello che ho capito è quello che gli serve:
(?:.*)
in questo modo $match[1] dovrebbe contenere l'url
se invece può contenere più di un link bisogna fare una cosa un po' più complicata