Pobierz wszystkie adresy URL w łańcuchu z php

Próbuję znaleźć sposób na uzyskanie tablicy adresów URL z ciągu tekstu. Tekst będzie nieco sformatowany w następujący sposób:

Oto jakiś losowy tekst

http://techcrunch.com/2012/07/20/kickstarter-flashr-wants-to-make-the-iphones-bezel-a-massive-notification-light/?grcc=88888Z0ZwdgtZ0Z0Z0Z0Z0&grcc2=835637c33f965e6cdd34c87219233711~1342828462249~fca4fa8af1286d8a77f26033fdeed202~510f37324b14c50a5e9121f955fac3fa ~ 1342747216490 ~ 0 ~ 0 ~ 0 ~ 0 ~ 0 ~ 0 ~ 0 ~ 0 ~ 7 ~ 3 ~

http://techcrunch.com/2012/07/20/last-day-to-pupase-extra-early-bird-tickets-for-disrupt-sf/

Oczywiście, te linki mogą być czymkolwiek (i może być wiele linków, są to tylko te, które testuję teraz. Jeśli użyję prostego adresu URL, takiego jak mój regex działa dobrze).

Ja używam:

preg_match_all('((https?|ftp|gopher|telnet|file|notes|ms-help):'.
    '((//)|(\\\\))+[\w\d:#@%/;$()~_?\+-=\\\.&]*)',
    $bodyMessage, $matches, PREG_PATTERN_ORDER);

Kiedy robięprint_r( $matches); otrzymuję wynik:

Array ( [0] => Array (
    [0] => http://techcrunch.com/2012/07/20/kickstarter-flashr-wants-to-make-the-iphon=
    [1] => http://techcrunch.com/2012/07/20/last-day-to-purchase-extra-early-bird-tick= 
    [2] => http://techcrunch.co=
    [3] => http://techcrunch.com/2012/07/20/kickstarter-flashr-wants-to-make-the-ip= 
    [4] => http://techcrunch.com/2012/07/20/last-day-to-purc=
    [5] => http://tec=
)
...

Żaden z tych elementów w tej tablicy nie jest pełnym łączem z powyższych linków.

Czy ktoś zna dobry sposób na uzyskanie tego, czego potrzebuję? Znalazłem kilka rzeczy wyrażeń regularnych, aby uzyskać linki do PHP, ale żaden z nich nie działa.

Dzięki!

Edytować:

Ok, więc wyciągam te linki z e-maila. Skrypt analizuje wiadomość e-mail, pobiera treść wiadomości, a następnie próbuje pobrać z niej linki. Po zbadaniu wiadomości e-mail wygląda na to, że z jakiegoś powodu dodaje miejsce w środku adresu URL. Oto wynik wiadomości o ciele widziany przez mój skrypt PHP.

 --00248c711bb99ca36d04c54ba5c6 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable http://techcrunch.com/2012/07/20/kickstarter-flashr-wants-to-make-the-iphon= es-bezel-a-massive-notification-light/?grcc=3D88888Z0ZwdgtZ0Z0Z0Z0Z0&grcc2= =3D835637c33f965e6cdd34c87219233711~1342828462249~fca4fa8af1286d8a77f26033f= deed202~510f37324b14c50a5e9121f955fac3fa~1342747216490~0~0~0~0~0~0~0~0~7~3~ http://techcrunch.com/2012/07/20/last-day-to-purchase-extra-early-bird-tick= ets-for-disrupt-sf/ --00248c711bb99ca36d04c54ba5c6 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable 

Jakieś sugestie, jak sprawić, by adresy URL nie były łamane?

EDYCJA 2

Zgodnie z sugestią Laurneta uruchomiłem ten kod:

 $bodyMessage = str_replace("= ", "",$bodyMessage);

Jednak kiedy to powtarzam, nie chce się zastąpić „=”

 --00248c711bb99ca36d04c54ba5c6 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable http://techcrunch.com/2012/07/20/kickstarter-flashr-wants-to-make-the-iphon= es-bezel-a-massive-notification-light/?grcc=3D88888Z0ZwdgtZ0Z0Z0Z0Z0&grcc2= =3D835637c33f965e6cdd34c87219233711~1342828462249~fca4fa8af1286d8a77f26033f= deed202~510f37324b14c50a5e9121f955fac3fa~1342747216490~0~0~0~0~0~0~0~0~7~3~ http://techcrunch.com/2012/07/20/last-day-to-purchase-extra-early-bird-tick= ets-for-disrupt-sf/ --00248c711bb99ca36d04c54ba5c6 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable 

questionAnswers(2)

yourAnswerToTheQuestion