Как проанализировать и проверить корни доменов и поддоменов в C # - PullRequest
0 голосов
/ 27 марта 2012

Несмотря на то, что я просматривал некоторые классы, мне было трудно найти эффективный способ синтаксического анализа / регулярного выражения доменов (как корневых, так и поддоменов, включая такие вещи, как .co.uk и т. Д.).

Существует ли функция, которая может проверять, является ли это правильный домен / URL без фактического подключения к сайту?Моя цель - использовать это для большого списка URL-адресов, чтобы захватить практически все, что угодно до (и включая) TLD.

1 Ответ

0 голосов
/ 27 марта 2012

Вам придется настроить регулярное выражение для вашей конкретной ситуации, но это дает вам точку, с которой нужно начать:

const string pattern = @"http[s]?://(?<Domain>([a-zA-Z0-9\-]+?\.)*([a-zA-Z0-9\-]+\.)*([a-zA-Z]{3,61}|[a-zA-Z]{1,}\.[a-zA-Z]{2,3}))"; //";
var regex = new Regex(pattern, RegexOptions.IgnoreCase);
var match = regex.Match(myURL);
var domain = match.Groups["Domain"].Value;
...