Всем привет! Столкнулся с проблемой громоздкости новосозданной формулы (точнее я её ещё пишу) Проблема: Есть куча сайтов записанных в любом из следующих форматов: http://moysait.ru или moysait.ru или http://moysait.com или http://haha.moysait.ru или haha.moysait.ru или... при этом надо вытащить только домен второго уровня при этом все домены разные. начал ваять формулу ... =ЛЕВСИМВ(ПРОПНАЧ(ПРАВСИМВ(O2;ДЛСТР(O2)-(ПОИСК(":";O2)+2)));ПОИСК(".";O2)) - это первая часть, в ней я удаляю http или https вторая часть должна была удалить окончание .ru или .com или ... но столкнулся с проблемой, что: 1. придётся повторить первую часть внутри второй 2. что делать с доменами 3 и 4 уровня, как их удалить? 3. надо всё это разместить внутри одной ячейки
Не очень секу в доменах, но, поскольку адрес разделяется точками, может можно посчитать их количество в адресе, и исходя из этого делать выводы о наличии в адресе уровней, а уж потом, исходя из полученных данных задавать, что резать, а что оставлять. Типа, если точек больше 3 то резать всю строку до первой точки и после третьей.
благодарю. Фишка в том, что эта функция работает в общей книге, а книга доступна пользователям у которых на рабочих станциях запрещены макросы поэтому пишу туда только функции
тогда так =ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПРАВСИМВ(ПСТР("."&ПОДСТАВИТЬ(A1;".";ПОВТОР(".";99));1;99*(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;".";))));99);".";"");"http://";"")