【发布时间】:2013-09-29 14:03:58
【问题描述】:
我有一个电子邮件地址
xyz@yahoo.com
我想从电子邮件地址中获取域名。我可以用 Regex 实现这一点吗?
【问题讨论】:
-
如果有疑问(或者您没有尝试过任何东西),请使用正则表达式!现在你有两个问题。
标签: c# email domain-name
我有一个电子邮件地址
xyz@yahoo.com
我想从电子邮件地址中获取域名。我可以用 Regex 实现这一点吗?
【问题讨论】:
标签: c# email domain-name
使用MailAddress,您可以改为从属性中获取Host
MailAddress address = new MailAddress("xyz@yahoo.com");
string host = address.Host; // host contains yahoo.com
【讨论】:
如果Default's answer 不是您想要的,您可以始终Split '@' 之后的电子邮件字符串
string s = "xyz@yahoo.com";
string[] words = s.Split('@');
words[0] 将是 xyz 如果您将来需要它words[1] 将是 yahoo.com
但默认的答案肯定是解决这个问题的更简单方法。
【讨论】:
或者对于基于字符串的解决方案:
string address = "xyz@yahoo.com";
string host;
// using Split
host = address.Split('@')[1];
// using Split with maximum number of substrings (more explicit)
host = address.Split(new char[] { '@' }, 2)[1];
// using Substring/IndexOf
host = address.Substring(address.IndexOf('@') + 1);
【讨论】: