在C#中的@部分截断电子邮件文本字符串

jkr*_*ala 1 c# asp.net string text truncate

我有一个ASP.NET C#的情况,例如我有电子邮件地址hello@gmail.com但我需要删除所有电子邮件输入的@ gmail.com部分.请帮忙.谢谢 :)

Dar*_*iak 9

您可以使用MailAddress Class(System.Net.Mail):

string mailAddress = "hello@gmail.com";
var mail = new MailAddress(mailAddress);

string userName = mail.User; // hello
string host = mail.Host; // gmail.com
string address = mail.Address; // hello@gmail.com
Run Code Online (Sandbox Code Playgroud)

在错误的电子邮件地址(例如,缺少符号或多于一个)的情况下,您必须捕获FormatException,例如:

string mailAddress = "hello@gmail@";
var mail = new MailAddress(mailAddress); // error: FormatException
Run Code Online (Sandbox Code Playgroud)

如果您不想验证电子邮件地址,可以使用字符串中的Split方法:

string mailAddress = "hello@gmail.com";
char atSign = '@';
string user = mailAddress.Split(atSign)[0]; // hello
string host = mailAddress.Split(atSign)[1]; // gmail.com
Run Code Online (Sandbox Code Playgroud)