Существует только одно совпадение, потому что ваше регулярное выражение соответствует первому http://
, а .*
"съедает" остальную часть строки.
Почему бы не поискать что-то более похожее на:
http://
или если вы пытаетесь захватить каждый URL-адрес полностью, что-то вроде:
http://[^ ]*
Что означает поиск чего-либо после http: //, которое не является пробелом.
Вы действительно должны прочитать какое-нибудь руководство по регулярным выражениям.