using System; using System.Text.RegularExpressions; namespace Recetas.Ch01 { /// /// Conjunto de utilidades para la validación de recursos Web: URL, email. /// public static class UtilitarioWeb { /// /// Valida una dirección de email: id@dominio /// /// Dirección de email a validar. /// /// true si la dirección de correo electrónico es válida, false en caso contrario. /// public static bool ValidarEmail(string email) { Regex regex = new Regex(@"^(([\w-]+\.)+[\w-]+|([a-zA-Z]{1}|[\w-]{2,}))@" + @"((([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\.([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\." + @"([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\.([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])){1}|" + @"([a-zA-Z]+[\w-]+\.)+[a-zA-Z]{2,4})$"); return regex.IsMatch(email); } /// /// Valida una dirección Web. /// /// URL a validar. /// /// true si la dirección es valida, y false si no lo es. /// public static bool ValidarUrl(string url) { string pattern = @"^http(s)?://([\w-]+.)+[\w-]+(/[\w- ./?%&=])?$"; Regex reg = new Regex(pattern, RegexOptions.Compiled | RegexOptions.IgnoreCase); return reg.IsMatch(url); } public static void Main(string[] args) { Console.WriteLine(UtilitarioWeb.ValidarUrl("http://o...content-available-to-author-only...t.com")); Console.WriteLine(UtilitarioWeb.ValidarEmail("fernd@outlook.com")); } } }