HTML 민첩성 팩을 사용하여 내 HTML 문자열 내에서 다른 HTML 태그의 시작 / 끝 위치를 찾으려고합니다.
샘플 HTML 문자열 :
This is a <a href="https://en.wikipedia.org/wiki/Health">custom</a> made html string that will serve as an example for the <a href="http://stackoverflow.com">StackOverflow</a> question described above.
성공적으로 코드를 실행 한 후 나는 다음과 같이는 A 태그의 시작 인덱스의 값으로 2 개 배열을 얻을 필요가 :
int[] startIndex = new int[] { 11, 124 };
int[] endIndex = new int[] { 68, 176 };
11 (125)가 태그 (68) 및 (175)의 시작을 표시하는 인덱스 위치 어디 동일한 태그의 마지막 인덱스 위치를 나타낸다.
htmlNode를 사용하여 htmlNode 팩을 사용하면 시작 인덱스와 함께 innerHtml.Lenght 요소와 함께 HTML 요소의 끝 인덱스 위치를 계산할 수있는 LinePosition 값을 얻을 수 있다는 것을 알고 있습니다.
나는 다음을 사용하여 a 요소를 계산할 수있었습니다.
int aNodesCount = htmlDoc.DocumentNode.SelectNodes("//a").Count;
그리고 이제 모든 것을 반복하고 각각의 LinePosition 값을 가져와야합니다. 이것은 내가 갇혀있는 곳이다.
글쎄, 그것은 꽤 간단해서 나는 다른 사람들이 똑같은 문제를 겪고있는 자신에 대한 답을 게시 할 것이다 :
foreach (HtmlNode aNode in htmlDoc.DocumentNode.SelectNodes("//a"))
{
startIndex.Add(aNode.LinePosition);
endIndex.Add(aNode.LinePosition + aNode.OuterHtml.Length);
}