2014-12-04 56 views
0

我正在尋找一種方法來提取我所說的「主機根」從給定主機名即如何計算主機名的超級名

f('stackoverflow.com') -> 'stackoverflow.com' 
f('www.stackoverflow.com') -> 'stackoverflow.com' 
f('www.stackoverflow.co.uk') -> 'stackoverflow.co.uk' 

我的第一種方法是正則表達式(當然),但SLD是一個問題因爲有相當多的選擇。

也許SLDs數據庫是一個好方法。

編輯

我用Node.js的工作,現在我使用的是tldjs module

+0

具體到PHP但相關:http://stackoverflow.com/q/2527231/187606 – 2014-12-04 20:50:52

+0

你不說你使用的是什麼平臺或語言,但也有圖書館,他們多半 – Vorsprung 2014-12-04 20:51:19

+0

@Pekka做到這一點웃我的問題與你指出的不同(但是謝謝):我沒有使用URL,也沒有使用'parse_url' PHP函數能夠(或旨在)提供「主機名root」。 – PauloASilva 2014-12-04 21:05:19

回答

1

你需要有整個SLD/TLD數據庫來做到這一點。沒有其他通用的方法,尤其是因爲在某些邊緣情況下存在三級或四級域名。

相關問題