正则表达式在字符串中查找用户UPN

时间:2018-12-18 13:04:43

标签: c# regex

我想在C#工具的各种字符串中找到用户主体名称,以匿名化特定于客户的数据。

我发现了这个:

  

(?[^ @] +)@(?(?:[a-z0-9] +。)+ [a-z] +)

但是在这样的字符串中:

  

f-4af0-86e8-01439a0ae52a \“ ,,”活动\“,\” 2018/10/30 9:05:35   AM \“,\” SingleSession \“,\” Desktop \“,\” 2018/10/29 2:35:06   PM \“,\” 655952 \“,\” DOM \ na010318 \“,\” na010318 \“,\” DOM \ n010318 \“,\” S-1-5-21-2052699199-3915784498-1582209984-1157056 \“,\” user.a@domain.acc.local \“,\”主要\“,\” c46b084c-6df3-47dd-9d3e-8e17f855c7fe \“”

它匹配UPN之前的整个部分(第一个空格,因为它匹配我猜的单词。

如何重新编写正则表达式以仅在此字符串中找到电子邮件/ UPN?

谢谢

1 个答案:

答案 0 :(得分:0)

如果UPN有效地具有与电子邮件地址相同的格式,请尝试以下有关此问题的答案:

regex extract email from strings

以下正则表达式适用于您的示例:

([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+)

https://regex101.com/r/ijG8Xr/2