Регулярное выражение для URL

log1n0v

Client
Регистрация
20.09.2013
Сообщения
64
Благодарностей
2
Баллы
8
Не могу понять, есть ли какое-то решение (быть может регулярку можно составить) для того, чтобы из URL вытащить только название домена и дом.зону?

Нашла {-Page.Fulldomen-}, но как я поняла в этом случае придется переходить по ссылке, а это сильно замедлит работу, если цель - просто собрать все домены.

Вся сложность в том, что url могут быть разные, т.е:
www.domen.ru/category/blabla
http://domen.ru/category/blabla
domen.ru/category/blabla

Ну и плюс ко всему доменные зоны разные.

Буду благодарна за любую помощь)
 

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
891
Баллы
113
Попробуйте вот этим кошмаром
(?<=^|\/\/)[^:]*?(?=/) - домен
ну и по аналогии из домена уже проще вытаскивать доменные зоны
 
  • Спасибо
Реакции: Greez

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
Для C#
Код:
var url = project.Variables["url"].Value;
return new Uri(url).Host;
 
  • Спасибо
Реакции: depo

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 880
Баллы
113
Можно через 2 замены сделать.
Сначала меняете (www\.|http(s|)//:-) на пустоту
Потом /.* тоже на пустоту.
В итоге останется домен с зоной.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)