Als Programmierer müssen Sie nach Abschluss des Entwurfs das Programm basierend auf der Programmsituation und dem Benutzerfeedback weiter verbessern, damit Sie Ihre Arbeit kontinuierlich verbessern können. Nachdem ich das Forum für das Software Business Network http://www.bizsofts.com erstellt hatte, stellte ich fest, dass die Leute ihren Beiträgen immer gerne verschiedene nützliche URL-Links oder E-Mail-Adressen hinzufügen. Ich habe dies beim Entwerfen nicht berücksichtigt, daher können diese URL-Links oder E-Mail-Adressen nur in Form von Text anstelle von Hyperlinks angezeigt werden. Andere Personen, die den Beitrag durchsuchen, müssen diese URL-Links ebenfalls in den Browser kopieren oder die E-Mail kopieren Adresse an Outlook senden, um zur entsprechenden Linkadresse zu gelangen oder eine E-Mail an die entsprechende E-Mail-Adresse senden.
Nachdem ich dieses Problem entdeckt hatte, machte ich mich daran, es zu lösen. Zunächst einmal den aktuellen Code in diesem Bereich im Internet nachschlagen. Leider wurden nach mehrmaliger Suche in Suchmaschinen keine Artikel in diesem Bereich gefunden. Dann dachte ich, ich könnte genauso gut selbst eines mit ASP.NET schreiben.
Der Schlüssel zur automatischen Anzeige von Hyperlinks liegt in der korrekten Identifizierung von Hyperlinks. Es besteht kein Zweifel daran, dass die Verwendung regulärer Ausdrücke die effektivste Methode ist. Reguläre Ausdrücke sind Textmuster, die aus gewöhnlichen Zeichen (z. B. den Zeichen a bis z) und Sonderzeichen (sogenannte Metazeichen) bestehen. Sie beschreiben ein Zeichenfolgen-Übereinstimmungsmuster und können verwendet werden, um zu überprüfen, ob eine Zeichenfolge eine bestimmte übereinstimmende Teilzeichenfolge enthält Teilzeichenfolgen, die bestimmte Bedingungen aus einer bestimmten Zeichenfolge erfüllen usw. Die .NET-Basisklassenbibliothek enthält einen Namespace und eine Reihe von Klassen, die die Leistungsfähigkeit regulärer Ausdrücke voll ausschöpfen können. Sie können damit URL-Links oder E-Mail-Adressen im Text automatisch erkennen. Lassen Sie mich im Detail erklären, wie Sie mit ASP.NET (C#) Schritt für Schritt unser Ziel erreichen:
Wenn Sie reguläre Ausdrücke in ASP.NET (C#) verwenden möchten, müssen Sie zunächst den Namespace System.Text.RegularExpressions einschließen:
using System.Text.RegularExpressions;
Der zweite Schritt besteht darin, reguläre Ausdrücke zu verwenden, um URL-Hyperlinks zu identifizieren:
Regex urlregex = new Regex(@"(http://([w.]+/?)S*) ",
RegexOptions.IgnoreCase|RegexOptions.Compiled);
Der Code hier verwendet reguläre Ausdrücke, um E-Mail-Adressen zu identifizieren:
Regex emailregex = new Regex(@"([a-zA-Z_0-9.-]+@[a-zA-Z_0 - 9.-]+.w+)",
RegexOptions.IgnoreCase|RegexOptions.Compiled);
Im dritten Schritt müssen diese Hyperlinks, wenn das Programm den URL-Hyperlink oder die E-Mail-Adresse identifiziert hat, durch <a href=...>Hyperlink</a> ersetzt werden Texte werden als Links angezeigt. Ich füge sie alle hier in die Funktion ein:
private void Button1_Click(object sender, System.EventArgs e)
{
string strContent = InputTextBox.Text;
Regex urlregex = new Regex(@"(http://([w.]+/?)S*)",
RegexOptions.IgnoreCase|. RegexOptions.Compiled);
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.Compiled);
strContent = emailregex.Replace(strContent, "<a href=mailto:></a>");
lbContent.Text += "<br>"+strContent;
}
Mit den oben genannten Schritten können Sie Hyperlinks und E-Mail-Adressen automatisch auf Webseiten anzeigen. Sie können gerne den Quellcode dieses Beispiels herunterladen und die tatsächliche Wirkung im Forum unter http://www.bizsofts.com beobachten. (Anmerkung des Autors: Die englische Version dieses Artikels wurde auf CodePoject und CodeGuru veröffentlicht.)