【问题标题】:RegEx to find the last part of an email addressRegEx 查找电子邮件地址的最后一部分
【发布时间】:2020-08-07 17:50:22
【问题描述】:

我需要获取电子邮件地址的最后一部分,以便我可以运行一些 if 语句并做我需要做的事情。前任。我需要确保电子邮件地址以 yahoo.com 结尾。我怎样才能找到它?

我正在使用 reg ex 来确保它们是有效的。

string pattern = @"\b[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}\b";
Regex emailValid = new Regex(pattern);

【问题讨论】:

  • 为什么不只是一个简单的.Split("@")
  • 如果你只想检查它是否是雅虎,你为什么需要正则表达式? email.ToUpper().EndsWith("@YAHOO.COM")
  • @Mikael 老实说,这就是我想知道的。如果我什至需要使用正则表达式。我会试一试,让你知道它是如何工作的。非常感谢您。将此作为答案,如果您愿意,我会接受。

标签: c# .net regex


【解决方案1】:

如果你只是想检查它是否是雅虎电子邮件,你可以使用:

email.ToUpper().EndsWith("@YAHOO.COM")

注意:如果您是从原始用户输入中收到这封电子邮件,您可能还需要在其中抛出一个 Trim()。

如果你只是绝对想使用正则表达式

string pattern = "@yahoo.com"
Regex.Match(
    input: email,
    pattern: pattern,
    options: RegexOptions.IgnoreCase)

【讨论】:

    猜你喜欢
    • 2011-03-21
    • 2018-03-15
    • 2016-06-01
    • 1970-01-01
    • 2015-01-23
    • 1970-01-01
    • 1970-01-01
    • 2013-08-10
    • 2021-02-12
    相关资源
    最近更新 更多