替换电子邮件字符串
Posted
技术标签:
【中文标题】替换电子邮件字符串【英文标题】:Replace email string 【发布时间】:2017-12-11 12:13:50 【问题描述】:所以我想替换一个普通的电子邮件,例如:"teste123@test.com"
到
“teste123 null@test.com"`
直到现在我才知道:
string expression = @"(([^<>()\[\]\\.,;:\s@']+(\.[^<>()\[\]\\.,;:\s@']+)*)|('.+'))@((\[[0-9]1,3\.[0-9]1,3\.[0-9]1,3\.[0-9]1,3])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]2,))";
Regex rx = new Regex(expression);
MatchCollection matches = rx.Matches(conteudo.PaginaConteudo);
Console.WriteLine("0 matches found in:\n 1",
matches.Count,
conteudo.PaginaConteudo);
string email,
replacement = "<h5 style='display:none;'>null</h5>",
mailenc,
correctString;
foreach (Match emails in matches)
email = emails.Value;
mailenc = "<h5>"+email + replacement+"</h5>";
correctString = conteudoOriginal.PaginaConteudo.Replace(email, mailenc);
conteudoOriginal.PaginaConteudo = correctString;
【问题讨论】:
拆分@
并添加您的字符串或使用 msdn.microsoft.com/en-us/library/… 并添加您的字符串。
这段代码有什么问题?什么是预期的输出?您想在代码中替换哪个电子邮件?
您永远不应该将 html 代码写成 C# 中的字符串。您正在代码中进行“UI 样式化”,这是可怕的关注点分离。为此使用 CSS。您还编写了一半缺少的代码,您在那里使用了一个正则表达式,我们看不到它:(
就像我一样,我希望输出从“teste123@test.com”到“teste123 null@test.com"`
如果邮件模板比较复杂,您仍然可以使用许多模板处理器的one。
【参考方案1】:
email = emails.Value.Replace("@","<b style='display:none;'>null</b>@");
【讨论】:
@dorinmunteanu 如果可行,请考虑accepting the answer。 我可以使用你的 Skype,以便我可以就这个主题提出更多问题吗? @KemalGüler 这是我的 Skype ID:kemalgulr @dorinmunteanu以上是关于替换电子邮件字符串的主要内容,如果未能解决你的问题,请参考以下文章
正在接收通过 php5+htmlMimeMail 发送的电子邮件,其中随机字符替换为 =