2012-04-23 18 views
1

您好,我有URL驗證一個jQuery的驗證方法,如何創建這些要求的URL驗證的jQuery

目前我使用這樣

var urlregex = new RegExp("^(http|https|ftp)\://([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&%\$\-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9\-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(\:[0-9]+)*(/($|[a-zA-Z0-9\.\,\?\'\\\+&%\$#\=~_\-]+))*$"); 
var urltest=urlregex.test(url); 

驗證規則此驗證

1 。 http://abcd爲真。

2。 http://abcd.com爲true。

3。 http://www.abcd爲true。

4。 http://www.abcd.com爲true。

我想成爲只有第4個網址。

我想,需要

wwwhttp:// (or like https:// , ftp://).com (or like .org , .lk)

唯一的URL像這樣的結束應該驗證真實

http://www.abcd.com 
http://www.efgh.lk 

請幫忙驗證。在此先感謝........................

+2

所以像'http:// google.com'應該是無效的? – Vytautas 2012-04-23 12:50:31

+0

@Vytautas根據我的QA團隊,YES ..:'( – 2012-04-23 12:53:50

+1

@KanishkaPanamaldeniya這有點不對......你應該注意到它們,因爲最終用戶可能不明白爲什麼'http:// google.com'不驗證 – pomeh 2012-04-23 13:02:52

回答

1

試試這個正則表達式:

^(http|https|ftp)\:\/\/www\.[-0-9a-zA-Z]+\.[a-zA-Z]{2,3}$ 

更新
Regex對象的初始化+無限數量的子域+最多4個字符的根域:

var urlregex = new RegExp(/^(http|https|ftp)\:\/\/www\.([-0-9a-zA-Z]+\.)+[a-zA-Z]{2,4}$/); 
+1

.info?:-) – 2012-04-23 12:57:45

+0

非常感謝我現在正在檢查這個 – 2012-04-23 12:58:08

+1

'^^(https?| ftp)\:\/\/www。[ - 0-9a-zA-Z] +。[a-zA-Z] {2,4} $'會更有效 – pomeh 2012-04-23 13:00:11