Comment : analyser des adresses de messagerie en Visual Basic
Mise à jour : novembre 2007
Cet exemple présente une expression régulière simple pour analyser une adresse de messagerie.
Exemple
Cet exemple utilise l'expression régulière (\S+)@([^\.\s]+)(?:\.([^\.\s]+))+, qui signifie :
Ensemble d'un ou plusieurs caractères autres qu'un espace (capturé), suivi de
Caractère "@", suivi de
Ensemble d'un ou plusieurs caractères autres qu'un espace ou un point (capturé), suivi de
Un ou plusieurs des éléments suivants :
Caractère ".", suivi de
Ensemble d'un ou plusieurs caractères autres qu'un espace ou un point (capturé).
La méthode Match de l'expression régulière retourne un objet Match qui contient des informations sur la partie de la chaîne d'entrée qui correspond à l'expression régulière.
''' <summary>
''' Parses an e-mail address into its parts.
''' </summary>
''' <param name="emailString">E-mail address to parse.</param>
''' <remarks> For example, this method displays the following
''' text when called with "someone@mail.contoso.com":
''' User name: someone
''' Address part: mail
''' Address part: contoso
''' Address part: com
''' </remarks>
Sub ParseEmailAddress(ByVal emailString As String)
Dim emailRegEx As New Regex("(\S+)@([^\.\s]+)(?:\.([^\.\s]+))+")
Dim m As Match = emailRegEx.Match(emailString)
If m.Success Then
Dim output As String = ""
output &= "User name: " & m.Groups(1).Value & vbCrLf
For i As Integer = 2 To m.Groups.Count - 1
Dim g As Group = m.Groups(i)
For Each c As Capture In g.Captures
output &= "Address part: " & c.Value & vbCrLf
Next
Next
MsgBox(output)
Else
MsgBox("The e-mail address cannot be parsed.")
End If
End Sub
Cet exemple requiert que vous utilisiez l'instruction Imports pour importer l'espace de noms System.Text.RegularExpressions. Pour plus d'informations, consultez Imports, instruction (espace de noms et type .NET).
Voir aussi
Tâches
Comment : vérifier que des chaînes sont dans un format d'adresse électronique valide