HtmlAgiltyPack анализирует HTML и берет значение из тега span и имени класса

asp.net asp.net-mvc c# html html-agility-pack

Вопрос

У меня есть HTML, который я загружаю через моего клиента webrequest. И из всего html я хочу анализировать только эту часть HTML:

<span class="sku">
<span class="fb">SKU                            :</span>118880101
</span>

Я использую HTML agilty pack для получения этого значения: 118880101

И я написал что-то вроде этого:

 HtmlDocument htmlDoc = new HtmlDocument();
 htmlDoc.LoadHtml(html);
 return htmlDoc.DocumentNode.SelectNodes("//span[@class='sku']").ElementAt(0).InnerText;

И это возвращает мне это значение из HTML:

SKU                            :118880101

Буквально вот так, пробелы включали ... Как я могу исправить эту логику с помощью пакета HTML Agilty, чтобы я мог вынести только это значение 118880101?

Кто-нибудь может мне помочь?

Редактировать: такое регулярное выражение будет делать следующее:

Substring(skuRaw.LastIndexOf(':') + 1);

что означало бы взять все после знака «:» в строке, которую я получаю ... Но я не уверен, можно ли использовать регулярное выражение так?

Принятый ответ

Попробуй это

     HtmlDocument htmlDoc = new HtmlDocument();
     htmlDoc.LoadHtml(html);
     var innerText=htmlDoc.DocumentNode.SelectNodes("//span[@class='sku']")
                          .ElementAt(0).InnerText;
     return innerText.replace(/\D/g,'');

если вы хотите использовать только Html Agility pack, попробуйте это

       var child = htmlDoc.DocumentNode.SelectNodes("//span[@class='fb']")
                           .FirstOrDefault();
        if (child != null)
        {
            var parent = child.ParentNode;
            parent.RemoveChild(child);
            var innerText = parent.InnerText;              
        }


Related

Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему