У меня есть консольное приложение, которое анализирует HTML-документы с помощью метода WebRequest (http). Проблема действительно в извлечении данных из возвращаемого HTML-кода.
Ниже приведен фрагмент интересующего меня HTML-кода:
<span class="header">Number of People:</span>
<span class="peopleCount">1001</span> <!-- this is the line we are interested in! -->
<span class="footer">As of June 2009.</span>
Предположим, что приведенный выше html содержится в строке с именем "responseHtml". Я хотел бы просто извлечь значение «Количество людей» (вторая строка).
Я искал стек поверх потока и нашел код, который мог бы работать:
Как извлечь текст из круглых скобок?
Но когда я его реализую, это не работает - я не думаю, что ему нравится то, как я поместил HTML-теги в регулярное выражение:
string responseHtml; // this is already filled with html code above ^^
string insideBrackets = null;
Regex regex = new Regex("\\<span class=\"peopleCount\">?<TextInsideBrackets>\\w+\\</span>");
Match match = regex.Match(responseHtml);
if (match.Success)
{
insideBrackets = match.Groups["TextInsideBrackets"].Value;
Console.WriteLine(insideBrackets);
}
Вышеуказанное просто не работает, это как-то связано с скобками HTML-диапазона? Все, что я хочу, это текстовое значение между тегами для этого определенного диапазона.
Заранее спасибо!