En tant que programmeur, une fois la conception terminée, vous devez continuer à améliorer le programme en fonction de la situation du programme et des commentaires des utilisateurs, afin de pouvoir améliorer continuellement votre travail. Après avoir fini de créer le forum pour le Software Business Network http://www.bizsofts.com , j'ai découvert que les gens aiment toujours ajouter divers liens URL ou adresses e-mail utiles à leurs messages. Je n'ai pas pris cela en considération lors de la conception, donc ces liens URL ou adresses e-mail ne peuvent être affichés que sous forme de texte au lieu d'hyperliens. Les autres personnes qui parcourent la publication doivent également copier ces liens URL dans le navigateur ou copier l'e-mail. adresse à Outlook pour accéder à l'adresse du lien correspondant ou envoyer un e-mail à l'adresse e-mail correspondante.
Après avoir découvert ce problème, j'ai décidé de le résoudre. La première chose à faire est de rechercher sur Internet le code actuel dans ce domaine. Malheureusement, aucun article dans ce domaine n'a été trouvé après des recherches répétées sur les moteurs de recherche. Ensuite, j'ai pensé que je pourrais aussi bien en écrire un moi-même en utilisant ASP.NET.
La clé pour afficher automatiquement les hyperliens est de savoir comment identifier correctement les hyperliens. Il ne fait aucun doute que la méthode la plus efficace consiste à utiliser des expressions régulières. Les expressions régulières sont des modèles de texte composés de caractères ordinaires (tels que les caractères a à z) et de caractères spéciaux (appelés métacaractères). Ils décrivent un modèle de correspondance de chaîne et peuvent être utilisés pour vérifier si une chaîne contient une certaine sous-chaîne ou extraire. des sous-chaînes qui remplissent certaines conditions à partir d'une certaine chaîne, etc. La bibliothèque de classes de base .NET contient un espace de noms et une série de classes qui peuvent exploiter pleinement la puissance des expressions régulières. Vous pouvez l'utiliser pour détecter automatiquement les liens URL ou les adresses e-mail dans le texte. Laissez-moi vous expliquer en détail comment utiliser ASP.NET (C#) pour atteindre notre objectif étape par étape :
Tout d'abord, si vous souhaitez utiliser des expressions régulières dans ASP.NET (C#), vous devez inclure l'espace de noms System.Text.RegularExpressions :
using System.Text.RegularExpressions;
La deuxième étape consiste à utiliser des expressions régulières pour identifier les hyperliens URL :
Regex urlregex = new Regex (@"(http://([w.]+/?)S*) ",
RegexOptions.IgnoreCase|RegexOptions.Compiled);
Le code ici utilise des expressions régulières pour identifier les adresses e-mail :
Regex emailregex = new Regex (@"([a-zA-Z_0-9.-]+@[a-zA-Z_0 - 9.-]+.w+)",
RegexOptions.IgnoreCase|RegexOptions.Compiled);
La troisième étape, lorsque le programme a identifié le lien hypertexte URL ou l'adresse e-mail, ces liens hypertexte doivent être remplacés par <a href=...>Hyperlien</a>, ce n'est qu'alors que ceux-ci peuvent les textes soient affichés sous forme de liens. Je les inclut tous dans la fonction ici :
private void Button1_Click (object sender, System.EventArgs e)
{
chaîne strContent = InputTextBox.Text ;
Regex urlregex = new Regex (@"(http://([w.]+/?)S*)",
RegexOptions.IgnoreCase| RegexOptions.Compilé);
strContent = urlregex.Replace(strContent,
"<a href="" target="_blank"></a>");
Regex emailregex = new Regex (@"([a-zA-Z_0-9.-]+@[a-zA-Z_0-9.-]+.w+)",
RegexOptions.IgnoreCase| RegexOptions.Compilé);
strContent = emailregex.Replace(strContent, "<a href=mailto:></a>");
lbContent.Text += "<br>"+strContent;
}
Grâce aux étapes ci-dessus, vous pouvez afficher automatiquement des hyperliens et des adresses e-mail sur les pages Web. Vous êtes invités à télécharger le code source de cet exemple et à observer l'effet réel sur le forum à l' adresse http://www.bizsofts.com . (Note de l'auteur : la version anglaise de cet article a été publiée sur CodePoject et CodeGuru)