当前位置 : 主页 > 编程语言 > c语言 >

使用Regex进行VB.NET电子邮件验证

来源:互联网 收集:自由互联 发布时间:2021-06-24
我已经尝试实现一个相当简单的电子邮件验证功能,即使输入是有效的电子邮件,它似乎也会返回错误匹配.我已经搜索了现有正则表达式的任何问题,但它似乎是正确的. 即使匹配返回错误
我已经尝试实现一个相当简单的电子邮件验证功能,即使输入是有效的电子邮件,它似乎也会返回错误匹配.我已经搜索了现有正则表达式的任何问题,但它似乎是正确的.

即使匹配返回错误值,程序也会步入下一个验证级别(它不应该).

这是电子邮件验证功能.

Function EmailAddressChecker(ByVal emailAddress As String) As Boolean
        Dim regExPattern As String = "^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$"
        Dim emailAddressMatch As Match = Regex.Match(emailAddress, regExPattern)
        If emailAddressMatch.Success Then
            Return True
        Else
            Return False
        End If
End Function

并且用于调用电子邮件验证功能的表单验证.

If (String.IsNullOrEmpty(EmailTextBox.Text) OrElse EmailAddressChecker(EmailTextBox.ToString)) Then
            MessageBox.Show("Please enter a valid email addresss")
            Return False
End If

所有这一切的调用都发生在一个click事件上,该事件触发了一系列严重的If语句,检查是否设置了所有字段.

跳过一大块代码,click事件会询问“AreFieldsSet<> True”. “AreFieldsSet”函数内部包含多个输入的所有验证;其中一个是电子邮件验证if语句.

是否在UpperCase中发送电子邮件?如果他们不是,他们将无法匹敌.

如果要修改Regex以使其不区分大小写,请使用以下命令:

"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$"
网友评论