Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengesahkan alamat e-mel dalam C#?

Bagaimana untuk mengesahkan alamat e-mel dalam C#?

王林
王林ke hadapan
2023-08-25 16:41:131119semak imbas

如何在 C# 中验证电子邮件地址?

Terdapat pelbagai cara untuk mengesahkan alamat e-mel dalam C#.

System.Net.Mail - Ruang nama System.Net.Mail mengandungi kelas untuk menghantar e-mel ke pelayan Simple Mail Transfer Protocol (SMTP) untuk penghantaran.

System.Teks.RegularExpressions - Mewakili ungkapan biasa yang tidak berubah.

Menggunakan ungkapan berikut

@"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([azA-Z]{2,4}|[0-9]{1,3})(\]?)$"

Kami boleh mengesahkan alamat e-mel menggunakan kelas MailAddress ruang nama System.Net.Mail

Contoh

Demonstrasi Langsung

using System;
using System.Net.Mail;
namespace DemoApplication{
   class Program{
      public static void Main(){
         try{
            string email = "hello@xyzcom";
            Console.WriteLine($"The email is {email}");
            var mail = new MailAddress(email);
            bool isValidEmail = mail.Host.Contains(".");
            if(!isValidEmail){
               Console.WriteLine($"The email is invalid");
            } else {
               Console.WriteLine($"The email is valid");
            }
            Console.ReadLine();
         }
         catch(Exception){
            Console.WriteLine($"The email is invalid");
            Console.ReadLine();
         }
      }
   }
}

Output di atas

Output kod di atas
The email is hello@xyzcom
The email is invalid

Contoh penggunaan ungkapan biasa -

Kami juga boleh menggunakan ungkapan biasa untuk mengesahkan alamat e-mel.

Contoh

using System;
using System.Text.RegularExpressions;
namespace DemoApplication{
   public class Program{
      public static void Main(){
         string email = "hello@xyz.com";
         Regex regex = new Regex(@"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-
         9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$",
         RegexOptions.CultureInvariant | RegexOptions.Singleline);
         Console.WriteLine($"The email is {email}");
         bool isValidEmail = regex.IsMatch(email);
         if (!isValidEmail){
            Console.WriteLine($"The email is invalid");
         } else {
            Console.WriteLine($"The email is valid");
         }
         Console.ReadLine();
      }
   }
}

Output

Keluaran kod di atas ialah

The email is hello@xyz.com
The email is valid

Atas ialah kandungan terperinci Bagaimana untuk mengesahkan alamat e-mel dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Artikel sebelumnya:Apakah finalizer dalam C#?Artikel seterusnya:Apakah finalizer dalam C#?