Perche' e' giusto cosi' in base alla regexp che hai messo.

Controlla la documentazione qui

e poi tu fai

^(http://|http://www.)

quindi deve controllare che la stringa inizi per :
http://
oppure
http://www.

il che e' corretto
tale sottostringa inoltre per dare esito positivo deve essere concatenata a
[a-zA-Z0-9._-]
Ossia una qualsiasi stringa alfanumerica maiuscole-minuscole senza caratteri speciali.

La stringa che passi \s credo venga visto come singolo carattere s

io farei cosi
[a-z,A-Z,0-9,.,_,-]

Cmq nn sono prorpio un guru di regexp prova.