HtmlAgility rimuove l'attributo dal parametro di stile del nodo Div

c# html-agility-pack

Domanda

Sono bloccato cercando di rimuovere una definizione di stile dall'attributo style di un elemento DIV. Codice HTML:

<div class="el1" style="width:800px; max-width:100%" />
...

<div class="el2" style="width:800px; max-width:100%" />

Possono esserci più di 1 di questi elementi a cui devo applicare la manipolazione.

Ecco cosa ho finora utilizzando HtmlAgilityPack.

foreach (HtmlNode div in doc.DocumentNode.SelectNodes("//div[@style]"))
{
  if (div != null)
  {
    div.Attributes["style"].Value["max-width"].Remove(); //Remove() does not appear to be a function
  }
 }

Il mio processo di pensiero era selezionare qualsiasi con un attributo di stile. Cerca una definizione di larghezza massima e rimuovila.

Qualche guida su come questo può essere raggiunto?

Risposta accettata

Grazie a Marcel per avermi indirizzato nella giusta direzione:

Ecco la soluzione che ha funzionato per me.

HtmlNodeCollection divs = doc.DocumentNode.SelectNodes("//div[@style]");
            if (divs != null)
            {
                foreach (HtmlNode div in divs)
                {
                    string style = div.Attributes["style"].Value;
                    string pattern = @"max-width(.*?)(;)";
                    Regex regex = new Regex(pattern, RegexOptions.IgnoreCase);
                    string newStyle = regex.Replace(style, String.Empty);
                    div.Attributes["style"].Value = newStyle;
                }
            }



Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché