<分区>
对用户输入的文本框进行电子邮件验证并不难。
但这次我要检查一个字符串/段落是否包含电子邮件地址
例如。我想检查以下字符串中是否有电子邮件
“你今天好吗,如果你有兴趣,请发邮件给我 abc@def.com”
请帮忙。
<分区>
对用户输入的文本框进行电子邮件验证并不难。
但这次我要检查一个字符串/段落是否包含电子邮件地址
例如。我想检查以下字符串中是否有电子邮件
“你今天好吗,如果你有兴趣,请发邮件给我 abc@def.com”
请帮忙。
最佳答案
以下是实现此目标的方法:
string para =
" kjqdshfkjsdfh dskjhskqjdfhk qdhjkdhfj kjhfksjdhf jhjhjhjh@hhhh.com jjhdjfhsfjjd jhjhjhj jkhjhdfjhdjdf@.com ";
var splittedText = para.Split(new char[] {' '});
var mails = splittedText.Where(s => s.Contains("@"));
foreach (var mail in mails)
{
//here are all your mails
}
然后使用以下方法验证:
private bool IsEmailValid(string mail)
{
try
{
MailAddress eMailAddress = new MailAddress(mail);
return true;
}
catch (FormatException)
{
return false;
}
}
或者只使用类似的东西:
public static bool ValidateEmail(string str)
{
return Regex.IsMatch(str, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");
}
关于c# - 如何检查字符串是否包含c#中的电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20332773/