„Excel“ formulė: gaukite aukščiausio lygio domeną (TLD) -

Turinys

Bendroji formulė

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

Santrauka

Norėdami išgauti aukščiausio lygio domeną (TLD) (ty „com“, „net“, „org“) iš domeno vardo ar el. Pašto adreso, galite naudoti formulę, pagrįstą keliomis teksto funkcijomis: MID, RIGHT, FIND, LEN, ir PAKEISTI. Parodytame pavyzdyje formulė langelyje C5 yra:

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

Pastaba: Formulės „domenas“ forma reiškia domeną arba el. Pašto adresą, pvz., „Www.domain.com“.

Paaiškinimas

Pavyzdyje langelyje C5 yra ši formulė:

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

Iš esmės ši formulė naudoja funkciją RIGHT, kad išgautų simbolius, prasidedančius iš dešinės. Kitos šios formulės funkcijos atlieka tik vieną dalyką: jos išsiaiškina, kiek simbolių reikia išgauti, n:

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

Aukštu lygiu formulė pakeičia paskutinį tašką "". domene su žvaigždute (*) ir tada naudodamiesi funkcija RASTI ieškokite žvaigždutės padėties. Kai padėtis yra žinoma, funkcija RIGHT gali išgauti TLD.

Iš kur formulė žino, kaip pakeisti tik paskutinį tašką? Tai yra protinga dalis. Svarbiausia yra čia:

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

Šis fragmentas iš tikrųjų pakeičia paskutinį tašką žvaigždute (*).

Apgaulė yra ta, kad funkcija PAKEISTI turi pasirinktinį ketvirtąjį argumentą, nurodantį, kurį radimo teksto „egzempliorių“ reikėtų pakeisti. Jei nieko nepateikiama, visi egzemplioriai pakeičiami. Tačiau jei, tarkime, pateikiamas skaičius 2, pakeičiama tik antroji instancija.

Norėdami išsiaiškinti, kurį egzempliorių pakeisti, naudojama LEN funkcija:

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

Domeno ilgis be taškų atimamas iš viso domeno ilgio. Rezultatas yra taškų skaičius domene.

B5 pavyzdžio pavadinime yra du taškai domene, todėl numeris 2 naudojamas kaip egzemplioriaus numeryje:

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

Tik antras taškas pakeičiamas „*“. Tada pavadinimas atrodo taip:

„www.domain * com“

Tada funkcija RASTI, kad tiksliai išsiaiškintų, kur tekste yra žvaigždutė:

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

Rezultatas yra 11 (* yra 11-oje pozicijoje), kuris atimamas iš bendro domeno ilgio:

LEN(B5)-11

Kadangi vardas yra 15 simbolių, turime:

14-11 = 3

Galiausiai skaičių 3 naudoja RIGHT taip:

=RIGHT(B5,3)

Dėl to atsiranda „com“

Įdomios straipsniai...