Excel vzorec: Získajte doménu najvyššej úrovne (TLD) -

Obsah

Všeobecný vzorec

=RIGHT(domain,LEN(domain)-FIND("*",SUBSTITUTE(domain,".","*",LEN(domain)-LEN(SUBSTITUTE(domain,".","")))))

Zhrnutie

Na extrahovanie domény najvyššej úrovne (TLD) (tj. „Com“, „net“, „org“) z názvu domény alebo e-mailovej adresy môžete použiť vzorec založený na niekoľkých textových funkciách: MID, RIGHT, FIND, LEN, a NÁHRADA. V zobrazenom príklade je vzorec v bunke C5:

=RIGHT(B5,LEN(B5)-FIND("*",SUBSTITUTE(B5,".","*",LEN(B5)-LEN(SUBSTITUTE(B5,".","")))))

Poznámka: Vo všeobecnej forme vzorca predstavuje „doména“ doménu alebo e-mailovú adresu, napríklad „www.doména.com“.

Vysvetlenie

V príklade obsahuje bunka C5 tento vzorec:

=RIGHT(B5,LEN(B5)-FIND("*",SUBSTITUTE(B5,".","*",LEN(B5)-LEN(SUBSTITUTE(B5,".","")))))

Tento vzorec používa v jadre funkciu RIGHT na extrakciu znakov začínajúcich sprava. Ostatné funkcie v tomto vzorci robia iba jednu vec: zisťujú, koľko znakov je potrebné extrahovať, n:

=RIGHT(B5,n) // n = ??

Na vysokej úrovni vzorec nahrádza poslednú bodku „.“ v doméne s hviezdičkou (*) a potom pomocou funkcie NÁJDI vyhľadať pozíciu hviezdičky. Keď je pozícia známa, funkcia RIGHT môže extrahovať TLD.

Ako vie, že vzorec nahradí iba poslednú bodku? Toto je šikovná časť. Kľúč je tu:

SUBSTITUTE(B5,".","*",LEN(B5)-LEN(SUBSTITUTE(B5,".","")))

Tento úryvok slúži na skutočné nahradenie poslednej bodky hviezdičkou (*).

Trik spočíva v tom, že funkcia SUBSTITUTE má voliteľný štvrtý argument, ktorý určuje, ktorá „inštancia“ hľadaného textu by mala byť nahradená. Ak nie je zadané nič, všetky inštancie sa nahradia. Ak je však zadané číslo 2, nahradí sa iba druhá inštancia.

Na zistenie, ktorá inštancia sa má nahradiť, sa používa funkcia LEN:

LEN(B5)-LEN(SUBSTITUTE(B5,".",""))

Dĺžka domény bez akýchkoľvek bodiek sa odpočíta od celej dĺžky domény. Výsledkom je počet bodiek v doméne.

V príklade názvu v B5 sú v doméne dve bodky, takže číslo 2 sa používa ako v čísle inštancie:

SUBSTITUTE(B5," ","*",2)

Týmto sa nahradí iba druhá bodka znakom „*“. Názov potom vyzerá takto:

„www.domain * com“

Funkcia FIND potom prevezme zisťovanie, kde sa v texte nachádza hviezdička:

FIND("*", "www.domain*com")

Výsledok je 11 (* je na 11. pozícii), ktorá sa odpočíta od celkovej dĺžky domény:

LEN(B5)-11

Keďže názov má 15 znakov, máme:

14-11 = 3

Nakoniec číslo 3 používa RIGHT takto:

=RIGHT(B5,3)

Čo vedie k „com“

Zaujímavé články...