Какое правильное регулярное выражение для проверки полного доменного имени в C# и Javascript? Я искал повсюду, и я нашел разные спецификации. Который правильный.
Несколько примеров, которые я нашел:
1.(?=^.{1,254}$)(^(?:(?!\d+\.|-)[a-zA-Z0-9_\-]{1,63}(?<!-)\.?)+(?:[a-zA-Z]{2,})$)
2. (?=^.{1,254}$)(^(?:(?!\d|-)[a-zA-Z0-9\-]{1,63}(?<!-)\.?)+(?:[a-zA-Z]{2,})$)
3. \b((?=[a-z0-9-]{1,63}\.)(xn--)?[a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,63}\b
(Regular Expression cook book)
Пожалуйста помоги