Magic_Doctor
XLDnaute Barbatruc
Vérifie s'il y a une adresse mail dans une chaîne et, le cas échéant, l'extrait.
J'ai trouvé le Pattern ici (très instructif).
J'ai adapté, ma foi, ça a l'air de bien marcher.
Ex : f("mail de Romina : romina_coquina007@Farandula.jujuy (à envoyer expressément uniquement en cas de morosité australe") --> romina_coquina007@farandula.jujuy
J'ai trouvé le Pattern ici (très instructif).
J'ai adapté, ma foi, ça a l'air de bien marcher.
Ex : f("mail de Romina : romina_coquina007@Farandula.jujuy (à envoyer expressément uniquement en cas de morosité australe") --> romina_coquina007@farandula.jujuy
VB:
Function ExtraireCourriel(txt As String) As String
'*********************************************************************************
'Vérifie s'il y a une adresse mail dans une chaîne et, le cas échéant, l'extrait
'*********************************************************************************
Set regEx = CreateObject("VBScript.RegExp")
With regEx
.Global = True
.MultiLine = True
.IgnoreCase = False
.Pattern = "\b[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}\b"
End With
txt = LCase(txt) 'met toute la chaîne en minuscules au cas où un maladroit aurait mis des majuscules dans l'adresse mail
With regEx
If regEx.test(txt) Then 'le "Pattern" est bien retrouvé dans la chaîne
ExtraireCourriel = .Execute(txt)(0)
Else
ExtraireCourriel = "Not matched"
End If
End With
End Function
Dernière édition: