我正在加载电子邮件。为了跟踪点击次数,我用HREF =“%% track http://someurl%%”替换所有出现的HREF =“http:// someurl”
我们的电子邮件软件随后可以检测跟踪代码并跟踪点击点击次数(它会看到跟踪代码并将网址替换为可以跟踪的内容)。网址可以是任何有效的网址。
有没有人有一个代码示例来执行此类搜索和替换?
感谢
答案 0 :(得分:0)
传统观点认为,您不应该使用正则表达式解析HTML。但是,这种情况对于正则表达式来说可能很简单,特别是如果您可以控制正在接收的HTML,并且可以确保href
属性的格式始终相同。
private static readonly Regex hrefRegex =
new Regex("(?<=href=\")http://[^\"]*(?=\")", RegexOptions.IgnoreCase);
public static string InsertTrackingCode(string html)
{
return hrefRegex.Replace(html,
match => "%%track " + match.Groups[0].Value + "%%");
}
然后只需:
string htmlWithTracking = InsertTrackingCode(htmlWithoutTracking);