我在sometext@mail.com
一些文本中有以下格式的邮件地址。@mail.com 始终采用相同的格式,并且某些文本正在更改。如何在文本中匹配 sometext@mail.com。
问问题
112 次
2 回答
0
这不是微不足道的,无论您使用哪种正则表达式,您都可能在极端情况下以不正确的匹配结束,但作为第一个近似值,我建议
\b\S+@mail\.com\b
这不会匹配包含空格的邮件地址,但它会正确处理地址周围的标点符号(如"(sometext@mail.com)"
)。
于 2013-01-16T11:55:25.667 回答
0
这是您需要的:
\b[_a-z0-9-]+(\.[_a-z0-9-]+)*@mail\.com\b
编辑:(我刚刚在我的电脑上测试过,它可以工作)
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);
}
于 2013-01-16T11:56:28.393 回答