Как мне получить информацию из тега в C # и HtmlAgilityPack?

#c# #html #.net #web #html-agility-pack

#c# #HTML #.net #веб #html-agility-pack

Вопрос:

Я хочу получить некоторую информацию без тега C # HtmlAgilityPack. (Пример: <(a) href = «https://hashcode.co.kr «description = «»…>) Я хочу получить значение href.)

Как мне это сделать?

Ответ №1:

Пакет гибкости HTML содержит довольно много знаний, которых не хватает другим решениям, например, если вы делаете это с помощью регулярного выражения, это может привести к некоторым странностям HTML.

Однако, если вы хотите сделать это таким образом, вы можете использовать выражение: href="(.*)"

Примечания…

  1. Это не сработает, если у вас есть href = "url"
  2. Это не сработает, если используются одинарные кавычки, т.е. href='url'
  3. Это не будет работать для ряда других возможных вариантов HTML, без кавычек, табуляции вместо пробелов, пропущенных пробелов и т. Д

Вот пример C #:

 using System;
using System.Text.RegularExpressions;

class Program {
    static void Main(string[] args) {
     string pattern = @"href=""(.*)"" ";
     string input = "An extraordinary day <a href="https://hashcode.co.kr" description="example">dawns</a> with each new day.";
     Match m = Regex.Match(input, pattern, RegexOptions.IgnoreCase);
     if (m.Success)
         Console.WriteLine("Found '{0}' at position {1}.", m.Value, m.Index);
    }
}