我尝试实现了一个相当简单的电子邮件验证函数,但似乎返回了错误的匹配结果,即使输入是有效的电子邮件地址。我已经搜索了现有正则表达式的任何问题,但它似乎是正确的。
即使匹配返回了错误的值,程序仍然会进入下一个验证级别(这不应该发生)。
以下是电子邮件验证函数。
即使匹配返回了错误的值,程序仍然会进入下一个验证级别(这不应该发生)。
以下是电子邮件验证函数。
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
这需要在点击事件中调用,触发一系列级联的if语句来检查所有字段是否都被设置。
跳过大块代码,点击事件会询问"AreFieldsSet <> True"。在 "AreFieldsSet" 函数内包含多个输入的验证;其中之一是电子邮件验证 if 语句。