我有以下代码来验证电子邮件。如果只输入简单文本,它运作良好。但是当我输入部分文本时说test @,它不会抛出异常。你能指导一下我错过了什么。
Try
Dim M As New System.Net.Mail.MailAddress(Txt_Email.Text)
Catch ex As FormatException
MsgBox(ex.Message, MsgBoxStyle.Critical + MsgBoxStyle.OkOnly)
Txt_Email.Text = string.Empty
Exit Sub
End Try
感谢Adavance
欧麦
答案 0 :(得分:0)
您可以执行简单检查,验证给定的电子邮件地址,例如:
Public Function EmailIsValid(emailaddress As String) As Boolean
Try
Dim address = New MailAddress(emailaddress)
Return True
Catch ex As Exception
Return False
End Try
End Function
称之为:
Dim result as Boolean = EmailIsValid(Txt_Email.Text)
如果这是一个有效的电子邮件地址,结果将填充为true,如果不是,则填充为false。但是,有更好的方法来检查电子邮件地址是否有效。也许使用正则表达式。
我上面提到的方式并不好,因为使用try/catch
操纵代码是一个坏主意。
可以在此处找到正则表达式:Using a regular expression to validate an email address