ayrıştırma alanı - çok sağlam ve hafif bir kütüphane
npm install parse-domain
const { fromUrl, parseDomain } = require("parse-domain");
örnek 1
parseDomain(fromUrl("http://www.example.com/12xy45"))
{ type: 'LISTED',
hostname: 'www.example.com',
labels: [ 'www', 'example', 'com' ],
icann:
{ subDomains: [ 'www' ],
domain: 'example',
topLevelDomains: [ 'com' ] },
subDomains: [ 'www' ],
domain: 'example',
topLevelDomains: [ 'com' ] }
ÖRNEK 2
parseDomain(fromUrl("http://subsub.sub.test.ExAmPlE.coM/12xy45"))
{ type: 'LISTED',
hostname: 'subsub.sub.test.example.com',
labels: [ 'subsub', 'sub', 'test', 'example', 'com' ],
icann:
{ subDomains: [ 'subsub', 'sub', 'test' ],
domain: 'example',
topLevelDomains: [ 'com' ] },
subDomains: [ 'subsub', 'sub', 'test' ],
domain: 'example',
topLevelDomains: [ 'com' ] }
Neden?
Kullanım durumuna ve hacmine bağlı olarak, regex veya diğer dize manipülasyon araçlarını kullanarak bu sorunu kendiniz çözmemenizi şiddetle tavsiye ederim. Bu sorunun özü, URL dizelerini etki alanına ve alt alan adlarına düzgün şekilde ayrıştırmak için tüm gtld ve cctld soneklerini bilmeniz gerektiğidir , bu sonekler düzenli olarak güncellenir. Bu çözülmüş bir sorundur ve kendiniz çözmek istediğiniz bir sorun değildir (google veya başka bir şey değilseniz). Bir tutamda ana bilgisayar adı veya etki alanı adına ihtiyaç duymadıkça, bu adresten çıkmaya çalışmayın.
url.split('/')[2]
ne olursa olsun biz yazmak ait yanaftp
,ftps
,https
, alan adı DAİMA endeksi 2. olacak