Excel képlet: Felső szintű tartomány (TLD) beolvasása -

Tartalomjegyzék

Általános képlet

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

Összegzés

A legfelső szintű tartomány (TLD) (pl. "Com", "net", "org") kibontásához egy domain névből vagy e-mail címből több szövegfüggvényen alapuló képletet használhat: MID, RIGHT, FIND, LEN, és Pótolja. A bemutatott példában a C5 cellában szereplő képlet a következő:

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

Megjegyzés: A képlet általános formájában a "domain" olyan tartományt vagy e-mail címet jelent, mint például a "www.domain.com".

Magyarázat

A példában a C5 cella a következő képletet tartalmazza:

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

Lényegében ez a képlet a JOBB függvényt használja a jobbról kezdődő karakterek kibontására. A képlet többi funkciója csak egyet tesz: kitalálják, hány karaktert kell kibontani, n:

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

Magas szinten a képlet helyettesíti az utolsó "" pontot. a tartományban csillaggal (*), majd a FIND funkcióval keresi meg a csillag helyzetét. Amint a pozíció ismert, a RIGHT funkció kibonthatja a TLD-t.

Honnan tudja a képlet csak az utolsó pont helyettesítését? Ez az okos rész. A kulcs itt van:

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

Ez a kódrészlet az utolsó pont tényleges helyettesítését csillaggal (*) váltja fel.

A trükk az, hogy a SUBSTITUTE függvénynek van egy opcionális negyedik argumentuma, amely meghatározza, hogy a keresési szöveg melyik "példányát" kell kicserélni. Ha semmi nincs megadva, akkor az összes példány kicserélődik. Ha azonban mondjuk a 2-es számot adják meg, akkor csak a második példány kerül kicserélésre.

A helyettesítendő példány kitalálásához a LEN funkciót kell használni:

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

A pontok nélküli tartomány hossza kivonásra kerül a tartomány teljes hosszából. Az eredmény a tartományban lévő pontok száma.

A B5 példában szereplő névben két pont van a tartományban, így a 2-es számot a példányszámhoz hasonlóan használják:

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

Ez csak a második pontot helyettesíti "*" -ra. A név ekkor így néz ki:

"www.domain * com"

A FIND függvény ekkor veszi át, hogy kiderítse, pontosan hol található a csillag a szövegben:

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

Az eredmény 11 (a * a 11. pozícióban van), amelyet kivonunk a tartomány teljes hosszából:

LEN(B5)-11

Mivel a név 15 karakter, ezért:

14-11 = 3

Végül a 3-as számot RIGHT használja, így:

=RIGHT(B5,3)

Ami "com" -t eredményez

érdekes cikkek...