Vu que ça me fatigue de rechercher à chaque fois les mêmes regex's, ouverture d'un petit bloc-note dédié à l'art (non maîtrisé) du parsing.
Pour parser une URL d'un coup, celle-là marche plutôt bien à un détail près, il englobe la query et le hash (ce qu'il y a après un éventuel #). Pour éviter cela, si cela pose problème, il faut enlever le dernier ? et systématiquement ajouter un # à la fin de l'url avant parsing, s'il n'y est pas déjà évidemment. :