我只想使用RegExp

时间:2019-03-15 05:58:57

标签: c# regex

给定的字符串:

/CN=RECIPIENTS/CN=GMAIL.ONMICROSOFT.COM-52001-KARNIK@GMAIL.COM213

/CN=RECIPIENTS/CN=GMAIL.ONMICROSOFT.COM-52001-AHMED@GMAIL.COM213

输出:

 KARNIK@GMAIL.COM

AHMED@GMAIL.COM

我正在使用此模式,但是它不起作用

^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$

2 个答案:

答案 0 :(得分:0)

尝试一下。我根据上面的示例对此进行了尝试。我添加了其他示例字符串,因此编写强大的正则表达式将非常有用。

正则表达式:

[a-zA-Z]+@[a-zA-Z]+[.][a-zA-Z]+

regex101上的输出:

enter image description here

答案 1 :(得分:0)

从输入字符串中检索电子邮件的一种可能解决方案是

1)用连字符(-)分割字符串。

2)取索引为[2]的3个分割字符串。

3)并从分割的字符串中删除数字。

string input = "/CN=RECIPIENTS/CN=GMAIL.ONMICROSOFT.COM-52001-AHMED@GMAIL.COM213";

string output = new string(input.Split('-')[2].Where(x => !char.IsDigit(x)).ToArray());

输出:

enter image description here

注意: 以上代码仅适用于OP提供的输入。