Возможности !SEMTools
↑ Навигация по задачам в Excel и возможностям надстройки !SEMTools ↑

Извлечь домен из URL в Excel

Процедура доступна в !SEMTools Lite и Pro.

Извлечь домен из URL в Excel — обычная задача для тех, кто работает с выдачей, ссылками конкурентов и отчётами аналитики: из «https://shop.example.ru/catalog/divany/» нужно оставить «shop.example.ru». В Excel 365 это делает короткая формула =ТЕКСТДО(ТЕКСТПОСЛЕ(A2;"//";;;;A2);"/";;;1), в любой версии — связка ЛЕВСИМВ, ПОДСТАВИТЬ и ПОИСК. А если адреса разбросаны по тексту, вперемешку с почтой и комментариями, проще всего процедура !SEMTools: она достаёт все домены из ячейки в 2 клика.

Извлечь домены из ссылок и текста в Excel: до и после
ИЗВЛЕЧЬ → Символы → По REGEX-паттерну → Готовые паттерны → Домены: домен с поддоменами из ссылок, адресов почты и текста

Если же в ячейках не адреса, а кликабельные гиперссылки с текстом вроде «Подробнее», сначала нужно вытащить URL из гиперссылок, а уже потом домены.

Зачем вытаскивать домены из ссылок

Полный URL уникален почти для каждой строки, а домен позволяет сгруппировать данные по сайтам. Вот где это нужно чаще всего:

  • Анализ поисковой выдачи — какие сайты чаще всего встречаются в топе по вашим запросам.
  • Ссылочный профиль — выгрузка обратных ссылок из сервиса, где важны доноры, а не отдельные страницы.
  • Отчёты Метрики и рекламных кабинетов — переходы и площадки по адресам страниц.
  • Списки контактов и заявки — домены компаний из адресов почты и сайтов в свободном тексте.

Извлечь домен из URL формулой

Логика простая: убрать протокол (всё до «//» включительно), а затем взять текст до первого слеша. Формула ниже работает в любой версии Excel и не ломается на адресах без «https://».

Домен из ссылки, любая версия Excel
B2=ЛЕВСИМВ(ПОДСТАВИТЬ(A2;ЛЕВСИМВ(A2;ЕСЛИОШИБКА(ПОИСК("//";A2)+1;0));"");ПОИСК("/";ПОДСТАВИТЬ(A2;ЛЕВСИМВ(A2;ЕСЛИОШИБКА(ПОИСК("//";A2)+1;0));"")&"/")-1)
AB
1URLДомен
2https://semtools.guru/ru/download/semtools.guru=ЛЕВСИМВ(ПОДСТАВИТЬ(A2;ЛЕВСИМВ(A2;ЕСЛИОШИБКА(ПОИСК("//";A2)+1;0));"");ПОИСК("/";ПОДСТАВИТЬ(A2;ЛЕВСИМВ(A2;ЕСЛИОШИБКА(ПОИСК("//";A2)+1;0));"")&"/")-1)
3http://m.avito.ru/moskva/mebelm.avito.ru=ЛЕВСИМВ(ПОДСТАВИТЬ(A3;ЛЕВСИМВ(A3;ЕСЛИОШИБКА(ПОИСК("//";A3)+1;0));"");ПОИСК("/";ПОДСТАВИТЬ(A3;ЛЕВСИМВ(A3;ЕСЛИОШИБКА(ПОИСК("//";A3)+1;0));"")&"/")-1)
4www.yandex.ru/search?text=диванwww.yandex.ru=ЛЕВСИМВ(ПОДСТАВИТЬ(A4;ЛЕВСИМВ(A4;ЕСЛИОШИБКА(ПОИСК("//";A4)+1;0));"");ПОИСК("/";ПОДСТАВИТЬ(A4;ЛЕВСИМВ(A4;ЕСЛИОШИБКА(ПОИСК("//";A4)+1;0));"")&"/")-1)
5vk.com/club123vk.com=ЛЕВСИМВ(ПОДСТАВИТЬ(A5;ЛЕВСИМВ(A5;ЕСЛИОШИБКА(ПОИСК("//";A5)+1;0));"");ПОИСК("/";ПОДСТАВИТЬ(A5;ЛЕВСИМВ(A5;ЕСЛИОШИБКА(ПОИСК("//";A5)+1;0));"")&"/")-1)
6habr.comhabr.com=ЛЕВСИМВ(ПОДСТАВИТЬ(A6;ЛЕВСИМВ(A6;ЕСЛИОШИБКА(ПОИСК("//";A6)+1;0));"");ПОИСК("/";ПОДСТАВИТЬ(A6;ЛЕВСИМВ(A6;ЕСЛИОШИБКА(ПОИСК("//";A6)+1;0));"")&"/")-1)

ЛЕВСИМВ(A2;ПОИСК("//";A2)+1) — это «https://» или «http://», ПОДСТАВИТЬ его удаляет. Если «//» в адресе нет, ЕСЛИОШИБКА даёт 0 и удалять нечего. Дальше ПОИСК находит первый слеш (к тексту дописан «/», чтобы адрес без пути тоже сработал), ЛЕВСИМВ оставляет всё до него.

В английском Excel: =LEFT(SUBSTITUTE(A2,LEFT(A2,IFERROR(SEARCH("//",A2)+1,0)),""),SEARCH("/",SUBSTITUTE(A2,LEFT(A2,IFERROR(SEARCH("//",A2)+1,0)),"")&"/")-1)

Ограничение у формулы одно, но существенное: она рассчитана на ячейку, где лежит только адрес. Если перед ссылкой есть текст («Каталог: shop.ikea.com/ru/»), он останется в результате. Порт (site.ru:8080) и параметры без слеша (site.ru?utm_source=…) тоже останутся.

Excel 365: ТЕКСТДО, ТЕКСТПОСЛЕ и регулярное выражение

В Microsoft 365 то же самое пишется вдвое короче:

=ТЕКСТДО(ТЕКСТПОСЛЕ(A2;"//";;;;A2);"/";;;1)

ТЕКСТПОСЛЕ убирает протокол, а если «//» нет, шестым аргументом возвращает адрес целиком. ТЕКСТДО берёт всё до первого слеша, а пятый аргумент 1 спасает адреса без пути вроде «habr.com».

Если адрес стоит внутри текста, выручит регулярное выражение через РЕГИЗВЛЕЧЬ: =РЕГИЗВЛЕЧЬ(A2;"[A-Za-z0-9-]+(\.[A-Za-z0-9-]+)+"). Шаблон ищет слова из латиницы, цифр и дефисов, соединённые точками, поэтому находит «shop.example.ru» и во фразе «Пишите на shop.example.ru или звоните», и в адресе почты «mail@firma.ru» (вернёт «firma.ru»). Все домены из ячейки через пробел: =ОБЪЕДИНИТЬ(" ";ИСТИНА;РЕГИЗВЛЕЧЬ(A2;"[A-Za-z0-9-]+(\.[A-Za-z0-9-]+)+";1)).

Убрать www и получить домен второго уровня

Для группировки по сайтам «www.yandex.ru», «market.yandex.ru» и «yandex.ru» часто нужно свести к одному «yandex.ru». Это отдельный шаг после извлечения домена:

Домен второго уровня
C3=ТЕКСТПОСЛЕ(A3;".";-2;;;A3)
ABC
1ДоменБез wwwВторой уровень
2www.yandex.ruyandex.ru=ПОДСТАВИТЬ(A2;"www.";"")yandex.ru=ТЕКСТПОСЛЕ(A2;".";-2;;;A2)
3market.yandex.rumarket.yandex.ru=ПОДСТАВИТЬ(A3;"www.";"")yandex.ru=ТЕКСТПОСЛЕ(A3;".";-2;;;A3)
4docs.google.comdocs.google.com=ПОДСТАВИТЬ(A4;"www.";"")google.com=ТЕКСТПОСЛЕ(A4;".";-2;;;A4)
5api.v2.service.ioapi.v2.service.io=ПОДСТАВИТЬ(A5;"www.";"")service.io=ТЕКСТПОСЛЕ(A5;".";-2;;;A5)
6semtools.gurusemtools.guru=ПОДСТАВИТЬ(A6;"www.";"")semtools.guru=ТЕКСТПОСЛЕ(A6;".";-2;;;A6)

−2 означает «после предпоследней точки». У «semtools.guru» точка одна, предпоследней нет — шестой аргумент возвращает домен как есть.

В английском Excel: =TEXTAFTER(A3,".",-2,,,A3)

Важный момент: правило «две последние части» не работает для доменов вида site.co.uk, firma.spb.ru или shop.com.ru — формула вернёт «co.uk» и «spb.ru». Если такие зоны встречаются в данных, проверьте результат по списку или поправьте эти строки вручную.

Извлечь домены в 2 клика с !SEMTools

Формулы хороши, когда в ячейке аккуратный адрес. Реальные выгрузки другие: ссылки в тексте, по несколько штук в ячейке, вперемешку с почтой. Для них в !SEMTools есть готовый паттерн:

  1. Выделите столбец со ссылками или текстом.
  2. Откройте ИЗВЛЕЧЬ → Символы → По REGEX-паттерну → Готовые паттерны → Домены (с субдоменами).
  3. Готово: в ячейках остались домены, а там, где их не было, ячейки стали пустыми.

Как ведёт себя процедура:

  • Поддомены сохраняются: «m.avito.ru», «shop.example.ru», «www.yandex.ru». Свести их к домену второго уровня можно формулой из раздела выше.
  • Из ячейки извлекаются все домены через пробел: «ozon.ru, wildberries.ru» превратится в «ozon.ru wildberries.ru».
  • Из адреса почты берётся домен: «mail@firma.ru» → «firma.ru».
  • Распознаются домены на латинице; кириллические вроде «мебель.рф» процедура не видит.
  • Имя файла с точкой в пути ссылки тоже похоже на домен: из «site.ru/files/price.xlsx» получится «site.ru price.xlsx». Если в ваших ссылках встречаются такие файлы, сначала обрежьте путь формулой из раздела выше.

Результат пишется прямо в исходные ячейки. Чтобы сохранить ссылки, включите на панели флажок «Выводить результат справа». В бесплатной версии обрабатывается один столбец выделения, остальные столбцы заполняются надписью «Доступно в полной версии !SEMTools».

Посчитать, сколько раз встречается каждый домен

Когда домены извлечены, следующий вопрос почти всегда — какие сайты встречаются чаще. В Excel 365 список доменов без повторов даёт УНИК, а количество рядом — СЧЁТЕСЛИ:

=СЧЁТЕСЛИ(B2:B1000;D2#)

Здесь в D2 стоит =УНИК(B2:B1000), а D2# — ссылка на весь разлившийся список. Без формул ту же сводку «домен — количество» строит быстрая сводная, о ней в статье о том, как посчитать количество уникальных значений.

Почему домен не извлекается — частые ошибки

  • В результате остался порт или параметры (site.ru:8080, site.ru?utm_source=…) — формула режет только по слешу. Двоеточие и вопросительный знак можно отрезать ещё одним ТЕКСТДО.
  • В результате остался текст перед адресом — формула ждёт, что в ячейке только URL. Для ссылок внутри текста используйте РЕГИЗВЛЕЧЬ или процедуру.
  • В домене осталось «www.» — формулы его не убирают, это отдельный шаг: ПОДСТАВИТЬ(…;"www.";"").
  • Лишний пробел или перенос строки в начале ячейки попадает в результат. Сначала уберите лишние пробелы.
  • Вместо домена «Подробнее» — в ячейке гиперссылка, и адрес спрятан в ней, а не в тексте.

Извлечь домен из URL — частые вопросы

Как извлечь домен из URL в Excel?

В Excel 365 — формулой =ТЕКСТДО(ТЕКСТПОСЛЕ(A2;"//";;;;A2);"/";;;1). В любой версии — связкой ЛЕВСИМВ, ПОДСТАВИТЬ и ПОИСК, которая убирает протокол и всё после первого слеша.

Как убрать https:// и www из ссылки?

Протокол убирает =ТЕКСТПОСЛЕ(A2;"//";;;;A2), www — =ПОДСТАВИТЬ(B2;"www.";"").

Как получить домен второго уровня из поддомена?

Формулой =ТЕКСТПОСЛЕ(B2;".";-2;;;B2): из «shop.example.ru» получится «example.ru».

Как извлечь домен из адреса почты?

Формулой =ТЕКСТПОСЛЕ(A2;"@") или процедурой «Готовые паттерны → Домены», которая понимает и ссылки, и почту.

Как найти все домены в тексте ячейки?

В Excel 365 — =ОБЪЕДИНИТЬ(" ";ИСТИНА;РЕГИЗВЛЕЧЬ(A2;"[A-Za-z0-9-]+(\.[A-Za-z0-9-]+)+";1)). Без формул — процедурой !SEMTools, она выводит все домены через пробел.

Достать домены из тысяч ссылок, адресов почты и строк с текстом можно без формул: выделили столбец, выбрали готовый паттерн «Домены» — и в ячейках остались только сайты, с поддоменами и без протоколов.
!SEMTools решает эту и сотни других задач в пару кликов!

Итоги: как извлечь домен из ссылки в Excel

Надеюсь, на этой странице вы нашли то, что искали, и смогли вытащить домены из своих ссылок. Для аккуратного столбца URL подойдёт формула: короткая с ТЕКСТДО в Excel 365 или длинная в старых версиях. Для ссылок в тексте нужно регулярное выражение. А для регулярной разборки выгрузок быстрее процедура: она не требует ни шаблонов, ни протягивания, ни вставки значений после.

Вас наверняка заинтересуют и похожие операции: извлечь e-mail из текста, извлечь текст после символа и открыть все ссылки из Excel разом.