2010-12-16 99 views
0

我正在加載電子郵件。爲了跟蹤點擊率,我用HREF =「%% track http://someurl%%」替換了所有出現的HREF =「http:// someurl」使用C搜索並替換字符串內的網址#

我們的電子郵件軟件可以檢測跟蹤代碼並跟蹤點擊點擊率它會看到跟蹤代碼並用可以跟蹤的內容替換網址)。該網址可以是任何有效的網址。

有沒有人有一個代碼的例子來做這種類型的搜索和替換?

謝謝

回答

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);