c#中匹配邮件文本的正则表达式
本文关键字:文本 正则表达式 | 更新日期: 2023-09-27 17:53:29
我有以下格式的邮件地址sometext@mail.com
在一些文本内。@mail.com的格式总是相同的,有些文本会改变。如何在文本中匹配sometext@mail.com
这不是微不足道的,无论您使用什么正则表达式,在极端情况下都可能以不正确的匹配结束,但作为初步估计,我建议
'b'S+@mail'.com'b
这将不匹配包含空格的邮件地址,但它将正确处理地址周围的标点符号(如"(sometext@mail.com)"
)。
这是你需要的:
'b[_a-z0-9-]+('.[_a-z0-9-]+)*@mail'.com'b
编辑:(我刚刚在我的PC上测试了它,它工作)
using System.Text.RegularExpressions;
string body = "hgfhfghgfhfhh fdfdf@mail.com gfhhfhf";
Match match = Regex.Match(body, @"'b[_a-z0-9-]+('.[_a-z0-9-]+)*@mail'.com'b",
RegexOptions.IgnoreCase);
if (match.Success) {
// Finally, we get the Group value and display it.
string key = match.Groups[1].Value;
Console.WriteLine(key);
}
现场演示