ASP.NET自定义验证电子邮件

本文关键字:电子邮件 验证 自定义 NET ASP | 更新日期: 2023-09-27 17:57:27

对于我的学校考试,我们必须验证电子邮件地址,但不允许使用RegularExpressionValidator。我正试图用自定义验证器解决这个问题,但我无法解决。(电子邮件输入在文本框中(tb_Email)。

我正试图这样解决它:

protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
    {
        if (tb_email.Text ==  'w+([-+.']'w+)*@'w+([-.]'w+)*'.'w+([-.]'w+)* )
        {
            args.IsValid = true;
        } 
        else
        {
            args.IsValid = false;
        }
    }

或者脑海中浮现出这样的东西:

protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
    {
        if (tb_email.Text != "")
        {
            string filter = 'w+([-+.']'w+)*@'w+([-.]'w+)*'.'w+([-.]'w+)*; 
            args.IsValid = true;
        } 
        else
        {
            args.IsValid = false;
        }
    }

我犯了很多错误,我就是不知道该怎么做。我做了很多搜索,但我只找到这样的答案:只需使用正则表达式验证器或Java中的代码解决方案(我还没有学会)。如果能给我一个好的答复,我将不胜感激!感谢

ASP.NET自定义验证电子邮件

您可以在没有regular ExpressionValidator的情况下使用正则表达式吗?如果是,那么:

using System;
using System.Text.RegularExpressions;
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
    if (tb_email.Text != "")
    {
        string filter = 'w+([-+.']'w+)*@'w+([-.]'w+)*'.'w+([-.]'w+)*; 
       Regex regex = new Regex(filter );
   Match match = regex.Match(tb_email.Text );
    if (match.Success)
    {
         args.IsValid=true; }
        else
        {
         args.IsValid = false;  
  } 
}

在客户端(javascript)上,请参阅以下文章:

使用jQuery和regex 验证电子邮件地址