首頁 >後端開發 >C++ >如何在 C# 中優雅地驗證電子郵件地址?

如何在 C# 中優雅地驗證電子郵件地址?

DDD
DDD原創
2025-01-21 09:46:08767瀏覽

How to Elegantly Validate Email Addresses in C#?

C#中優雅的郵件地址驗證方法

尋找高效率的郵件信箱驗證碼?以下方案兼具優雅與高效:

<code class="language-csharp">bool IsValidEmail(string email)
{
    string trimmedEmail = email.Trim();

    if (trimmedEmail.EndsWith(".")) {
        return false; // @TK-421建议
    }
    try {
        var addr = new System.Net.Mail.MailAddress(email);
        return addr.Address == trimmedEmail;
    }
    catch {
        return false;
    }
}</code>

解決潛在問題

正如Stuart所指出的那樣,最初的實現由於郵箱地址中存在空格而返回假陽性結果。透過比較解析後的位址與原始字串,解決了這個問題。

信箱驗證的說明

要注意的是,此驗證檢查的是郵箱地址的語法,不能保證其功能性。要驗證實際的可交付性,郵件投遞是唯一確定的測試方法。

辨識有效的信箱變體

與普遍假設相反,郵箱地址在其語法上表現出靈活性。有效的形式包括:

  • cog@wheel
  • "cogwheel the orange"@example.com
  • 123@$.xyz

因此,在大多數應用程式中,假陽性比假陰性更可取。

進一步探討

更多見解和替代方案,請參考以下資源:

以上是如何在 C# 中優雅地驗證電子郵件地址?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn