Como programador, después de completar el diseño, debe continuar mejorando el programa en función de la situación del programa y los comentarios de los usuarios, para que pueda mejorar continuamente su trabajo. Después de terminar de crear el foro para Software Business Network http://www.bizsofts.com , descubrí que a la gente siempre le gusta agregar varios enlaces URL o direcciones de correo electrónico útiles a sus publicaciones. No tomé esto en cuenta al diseñar, por lo que estos enlaces URL o direcciones de correo electrónico solo se pueden mostrar en forma de texto en lugar de hipervínculos. Otras personas que navegan por la publicación también deben copiar estos enlaces URL en el navegador. dirección a Outlook para ir a la dirección del enlace correspondiente o enviar un correo electrónico a la dirección de correo electrónico correspondiente.
Después de descubrir este problema, me propuse solucionarlo. Lo primero es buscar el código actual en esta área en Internet. Lamentablemente, después de repetidas búsquedas en los motores de búsqueda no se encontró ningún artículo en esta área. Entonces pensé, también podría escribir uno yo mismo usando ASP.NET.
La clave para mostrar hipervínculos automáticamente es cómo identificarlos correctamente. No hay duda de que el método más eficaz es utilizar expresiones regulares. Las expresiones regulares son patrones de texto compuestos por caracteres ordinarios (como los caracteres de la A a la Z) y caracteres especiales (llamados metacaracteres). Describen un patrón de coincidencia de cadenas y se pueden usar para verificar si una cadena contiene una determinada subcadena. Reemplazar subcadenas coincidentes o extraer. subcadenas que cumplen ciertas condiciones de una determinada cadena, etc. La biblioteca de clases básica de .NET contiene un espacio de nombres y una serie de clases que pueden aprovechar al máximo el poder de las expresiones regulares. Puede usarla para detectar automáticamente enlaces URL o direcciones de correo electrónico en texto. Permítanme explicarles en detalle cómo usar ASP.NET (C#) para lograr nuestro objetivo paso a paso:
Primero, si desea usar expresiones regulares en ASP.NET (C#), debe incluir el espacio de nombres System.Text.RegularExpressions:
usando System.Text.RegularExpressions
El segundo paso es usar expresiones regulares para identificar hipervínculos URL:
Regex urlregex = new Regex(@"(http://([w.]+/?)S*) ",
RegexOptions.IgnoreCase|RegexOptions.Compiled);
El código aquí utiliza expresiones regulares para identificar direcciones de correo electrónico:
Regex emailregex = new Regex(@"([a-zA-Z_0-9.-]+@[a-zA-Z_0 - 9.-]+.w+)",
RegexOptions.IgnoreCase|RegexOptions.Compiled);
El tercer paso, cuando el programa ha identificado el hipervínculo URL o la dirección de correo electrónico, estos hipervínculos deben reemplazarse con <a href=...>Hipervínculo</a>, por lo que solo entonces podrán Los textos se mostrarán como enlaces. Los incluyo todos en la función aquí:
Private void Button1_Click(remitente del objeto, System.EventArgs e)
{
cadena strContent = InputTextBox.Text;
Regex urlregex = new Regex(@"(http://([w.]+/?)S*)",
RegexOptions.IgnoreCase| RegexOptions.Compilado);
strContenido = urlregex.Replace(strContenido,
"<a href="" target="_blank"></a>");
Regex emailregex = new Regex(@"([a-zA-Z_0-9.-]+@[a-zA-Z_0-9.-]+.w+)",
RegexOptions.IgnoreCase| RegexOptions.Compilado);
strContent = emailregex.Replace(strContent, "<a href=mailto:></a>");
lbContent.Text += "<br>"+strContent;
}
A través de los pasos anteriores, puede mostrar automáticamente hipervínculos y direcciones de correo electrónico en páginas web. Le invitamos a descargar el código fuente de este ejemplo y observar el efecto real en el foro en http://www.bizsofts.com . (Nota del autor: la versión en inglés de este artículo se publicó en CodePoject y CodeGuru)