2016-06-24 34 views
-1

我有這樣的正則表達式:正則表達式用或不用HTTPS/HTTP或www

(https?:\/\/(?:www\.|(?!www))[^\s\.]+\.[^\s]{2,}|www\.[^\s]+\.[^\s]{2,}) 

其作品,除了它精緻接受一個URL,如:

http://55https//www.google.com/ 

我怎樣才能使它不會允許像

55https// 

http:// 

已經進入? (或在www或實際開始的域名之前)。

正則表達式接受這些還有:

www.demo.com 
~http://foo.co.uk/ 
+0

可能重複[什麼是最好的正則表達式來檢查一個字符串是一個有效的URL?](http://stackoverflow.com/questions/161738/what-is-the-best-regular-表達對檢查-IF-A-字符串是一個有效的URL) –

回答

1

使用^你的正則表達式錨定到字符串的開始,和/或$將它錨定到最後。

(^https?:\/\/(?:www\.|(?!www))[^\s\.]+\.[^\s]{2,}|www\.[^\s]+\.[^\s]{2,}$)