2010-04-22 5 views
1

Bonjour: Ceci est similaire à celui-ci here. Mais doit être fait au niveau du serveur plutôt qu'au niveau du client. Actuellement, j'utilise HTMLAgilityPack, y at-il de toute façon que je puisse détecter les ID en double? Merci d'avance.HTMLAgilityPack, ID dupliqués HTML

Répondre

1

Voici un moyen rapide de le faire:

HtmlDocument doc = new HtmlDocument(); 
doc.LoadHtml(htmlString); 

var count = new Dictionary<string, int>(); 

foreach (var node in doc.DocumentNode.Descendants()) 
{ 
    string id = node.GetAttributeValue("id", null); 
    if (id != null) 
    { 
     if (count.ContainsKey(id)) count[id] += 1; 
     else count.Add(id, 1); 
    } 
} 

var duplicates = count.Where(id => id.Value > 1); 

Cette parse essentiellement toute la piste de tenue de documents de comptage dans un Hash.