我正在尝试验证我的 vb.net windows 窗体应用程序的电子邮件地址,这是在另一个类中编写的验证电子邮件功能
Public Function ValidateEmailAddress(strEmailAddress As String) As Boolean
Dim pattern As String
pattern = "^([0-9a-zA-Z]([-\.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$"
If Regex.IsMatch(strEmailAddress, pattern) Then
Return True
Else
Return False
End If
End Function
然后我通过编写这段代码从另一个类调用 IsValid 函数
If ValidateEmailAddress(txtEmailAddress.Text) Then
MessageBox.Show("Email Valid")
Else
MessageBox.Show("Email Not Valid")
End If
单步执行此代码时,它会跳过 ValidateEmailAddress 函数中的 Return True 语句,也跳过 isValid() 函数中的 MessageBox.Show("Email Valid")。因此,即使我输入正确的电子邮件格式,我也会收到一封电子邮件无效的退货声明。请问正则表达式模式是否正确,或者任何人都可以在这里发现我做错了什么。谢谢