Bonsoir
Mon client m'a donné une expression régulière que je dois utiliser pour tester la validité d'une adresse mail saisie dans une cellule. Or celle-ci renvoie toujours VRAI quelque soit l'adresse mail entrée.
Je peux saisir n'importe quel caractère, plusieurs arobases etc.
la voici :
1 2
|
[.-_\-a-zA-Z0-9]{1,60}@[-_a-zA-Z0-9][.\-_a-zA-Z0-9]{0,50}.[a-zA-Z]{2,6}|() |
Je lui en ai proposé une autre mais comme elle n'a pas été validée par ses services, il n'en veut pas.
^([a-zA-Z0-9]+(([\.\-\_]?[a-zA-Z0-9]+)+)?)\@(([a-zA-Z0-9]+[\.\-\_])+[a-zA-Z]{2,6})$
Qu'est-ce qui cloche dans la première ?
Est-ce qu'une expression régulière dépend du langage qui l'utilise ?
Merci.
PS : voici ma fonction :
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| Private Function subVerifMail(strMail As String) As Boolean
Dim reg As VBScript_RegExp_55.RegExp
Set reg = New VBScript_RegExp_55.RegExp
reg.Pattern = "[.-_\-a-zA-Z0-9]{1,60}@[-_a-zA-Z0-9][.\-_a-zA-Z0-9]{0,50}.[a-zA-Z]{2,6}|()"
subVerifMail = reg.Test("t&~oé@@@^^to@y@iti.com")
subVerifMail = reg.Test("nt-e.oto@wy-nic.om")
subVerifMail = reg.Test(strMail)
Set reg = Nothing
End Function |
En faisant du pas à pas, je vois que mes 3 tests sont vrais ...
Partager