HtmlAgilityPack 첫 번째 노드에서 노드 선택

html-agility-pack

문제

다음 HTML을 고려해보십시오.

<tr>
  <td>1</td>
  <td>2</td>
  <td>
    <table>
      <tbody>
        <tr>
          <td>3</td>
          <td>4</td>
        </tr>
      <tbody>
    </table>
  </td>
  <td>5</td>
</tr>

여기서 내가 원하는 것은 직계 자손 인 모든 <td> 요소를 기본 <tr> 행으로 가져 오는 것입니다. 그 말은, 나는 1, 2 and 5 를 받고 싶다.

내가 사용하고있는 코드

<tr>
  <td>1</td>
  <td>2</td>
  <td>
    <table>
      <tbody>
        <tr>
          <td>3</td>
          <td>4</td>
        </tr>
      <tbody>
    </table>
  </td>
  <td>5</td>
</tr>

<tr> 노드 아래의 모든 <td> 요소를 반환합니다.

HtmlAgilityPack은 첫 번째 수준 하위 항목을 가져 오는 기능을 제공합니까 (그러한 메서드를 찾을 수 없기 때문에)?

수락 된 답변

HtmlNode.Elements("child_name") 은 찾고자하는 것입니다 :

gridRow.Elements("td")

인기 답변

좋아, 나는 이것이 효과가 있다고 생각한다.

 gridRow.Descendants("td").Where(x => x.ParentNode == gridRow)

직접 부모가 주 <tr> 요소 인 모든 <td> 요소가 반환됩니다.




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.