В предыдущем регулярном выражении пропущены некоторые типы URL, которые мне нужны, поэтому в интересах гуглеров я использую
(http://|https://)?(www.)?[A-z]*(.com|.co.uk|.us|.org|.net|.mobi)
в C #
var regexMatch = Regex.Match(input, @"(http://|https://)?(www.)?[A-z]*(.com|.co.uk|.us|.org|.net|.mobi)", RegexOptions.Multiline);
string domain = regexMatch.Value;
См. Пример на RegExr .
Вы можете удалить части "(...)?", Чтобы эта деталь не отображалась, например, для удаления соответствия http, которое мне требуется.
Возможно, не идеально, но у меня работает. Этот сайт является отличным справочником для построения выражений.