가정하자 나는이 HTML 파일이 :이 코드 1234512345 :연결하여 두 개의 노드 집합
<html>
<table class="class1">
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
</tr>
</table>
<table class="class2">
<tr>
<td>a</td>
<td>b</td>
<td>c</td>
<td>d</td>
<td>e</td>
</tr>
</table>
<table class="class3">
<tr>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
</table>
</html>
나는이 결과를 얻기 위해 XPath에이 파일을 조회하고 싶은
var xNavigator = xPathDoc.CreateNavigator();
var iterator = xNavigator.Select("//html/table[@class='class1']/tr/td|//html/table[@class='class3']/tr/td");
while (iterator.MoveNext())
Console.Write(iterator.Current.InnerXml);
을
하지만 결과는 다음과 같습니다. 1212345345
1234512345 대신 1212345345를 어떻게 얻을 수 있습니까?
감사합니다.
내가 원하는 것을 알고 있다고 생각하지만이 예는 모호합니다. 테이블 셀이 고유 한 값을 가지도록 변경하십시오 (어쩌면 class1 테이블의 경우 1-4, class3 테이블의 경우 A-F). 그런 다음 원하는 것을 설명하십시오. –
모든 세포는 자신의 데이터 (유형 : 날짜 또는 특정 값)가 있기 때문에 나는 그것을 좋아한다! 그 숫자는 순서대로 데이터를 가질 필요가 있음을 나타냅니다 : 테이블 calss1의 모든 셀 다음에 클래스 class2의 모든 셀이 몇번이고 반복됩니다. –
'|'는 연결 연산자가 아니라 조합 연산자입니다. 집합에는 순서가 정의되어 있지 않기 때문에 XPath 1.0에는 노드 집합 연결 연산자가 없으므로 연결이 의미가 없습니다. 사용자 지정 순서를 추적하려면 XPath 2.0이 필요한 시퀀스가 필요합니다. @MichaelGunter가 제안한대로 C# 환경의 기능을 사용하십시오. – LarsH