2

私はhtmlの文字列を持っています

var myString = @"<iframe src="http://www.whatever.com/" frameborder="0"></iframe>";
XDocument test = XDocument.Parse(myString);

src 値を解析したいと思います。私の考えは、文字列を xdocument に読み込んでから、linq を使用して値を取得することでした。

これは可能ですか?それは正しいアプローチですか?

4

2 に答える 2

0
var reader = new XmlTextReader("path/to/myHtmlFile.html");
while (reader.Read())
{
  // Keep reading until we hit an element called iframe
  if (reader.NodeType == XmlNodeType.Element && reader.Name == "iframe")
  {
    while (reader.MoveToNextAttribute())
    {
      // Keep moving to the next attribute until we hit one called src
      if (reader.Name == "src")
      {
        return reader.Value;
      }
    }
  }
}

これにより、最初の iframe 要素の src 値が取得されます。より多くの iframe 要素がある場合は、検索をもう少しスマートにする必要があるかもしれません。

于 2013-09-18T21:00:06.203 に答える