2012-12-09 29 views
1

我使用這個代碼來驗證網址:PHP查詢域名正則表達式(withoud TLD部分)

if(!filter_var($check_url, FILTER_VALIDATE_URL)) 
{ echo "URL is not valid"; } 
else { echo "OK, valid"; } 

現在,在大多數情況下,這是確定的,但這樣會解析:http://www.--tester.com作爲一個有效的域名?破折號在開始時是不允許的!?

是否有一個正則表達式只會檢查NAME(沒有擴展名部分,因爲它只會註冊.com域,因此會自動添加並且不需要檢查它)...因此只能檢查實際名稱是「很好去」...

我猜輸入必須僅檢查字母和數字和破折號(但只有在他們不在開始時)沒有點和其他字符。

回答

1

對不起球員,有必要時它通過別人​​:

^([a-zA-Z0-9][-a-zA-Z0-9]*[a-zA-Z0-9])$