Rubrik: HTML/Internet/Netzwerk · HTML/Email | VB-Versionen: VB.NET | 04.08.05 |
Syntax einer EMail-Adresse prüfen (.NET) Mit Hilfe von regulären Ausdrücken lässt sich die Syntax einer EMail-Adresse unter VB.NET sehr leicht auf Plausibilität prüfen. | ||
Autor: Dieter Otter | Bewertung: | Views: 21.782 |
www.tools4vb.de | System: WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Mit Hilfe von regulären Ausdrücken können Strings sehr schnell und mit wenig Code-Aufwand mit einem vorgegeben Muster verglichen werden. Heute möchten wir Ihnen ein "Muster" vorstellen, mit dem sich die Syntax einer EMail-Adresse prüfen lässt und somit bereits im Vorfeld abgefragt werden kann, ob die vom Anwender eingegebene EMail-Adresse überhaupt existieren könnte.
Erstellen Sie ein neues Windows-Form-Projekt und platzieren auf die Form eine TextBox mit dem Namen "txtEMail", sowie eine Schaltfläche namens "Button1". Beim Klick auf den Button wird die EMail-Adresseingabe dann mit Hilfe der Regex-Klasse und dem vorgegebenen Vergleichmuster geprüft.
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click ' RegEx-Klassenobjekt erstellen Dim oRegEx As System.Text.RegularExpressions.Regex ' Vergleichsmuster Dim sPattern As String = "^([\w-]+\.)*?[\w-]+@[\w-]+\.([\w-]+\.)*?[\w]+$" With oRegEx ' Syntax der EMail-Adresse prüfen If Not .IsMatch(txtEMail.Text, sPattern) Then ' Syntax entspricht nicht dem Muster! MsgBox("Die Syntax der EMail-Adresse ist nicht korrekt!") End If End With End Sub
Kurze Erläuterung zu dem verwendeten Muster:
Das erste \w steht für ein beliebiges Wortzeichen (inkl. Unterstrich). Durch das anschließende +-Zeichen wird festgelegt, dass auch mehrere aufeinanderfolgende Wortzeichen zulässig sind. \. bedeutet, dass auf die Wortzeichen ein Punkt folgen muss. Durch Angabe von *? wird festgelegt, dass es sich bei der bisherigen Musterfestlegung um eine optionale Gruppe handelt, sich diese Gruppe jedoch auch wiederholen darf. Das zweite \w bedeutet, dass hier wieder ein Wortzeichen folgen muss. Durch Angabe des nachfolgenden +-Zeichens wird festgelegt, dass sich das Wortzeichen beliebig wiederholen darf, aber mindestens eines vorhanden sein muss, ehe dann durch Angabe von @ das @-Zeichen folgen muss. Der zweite Teil des Musters nach dem @-Zeichen entspricht weitestgehend dem des ersten Teils.