Xpath에서 특정 값과 동일한 요소를 선택하고 싶습니다.
샘플 XML 데이터 :
<aaa id="11" >
<aaa id="21" >
<aaa id="31" ></aaa>
<bbb id="32" >
<aaa id="41" ></aaa>
<bbb id="42" ></bbb>
<ccc id="43" ></ccc>
<ddd id="44" >qwerty</ddd>
<ddd id="45" ></ddd>
<ddd id="46" ></ddd>
</bbb>
</aaa>
<bbb id="22" >
<aaa id="33" >qwerty</aaa>
<bbb id="34" ></bbb>
<ccc id="35" ></ccc>
<ddd id="36" ></ddd>
<ddd id="37" ></ddd>
<ddd id="38" ></ddd>
</bbb>
<ccc id="23" >qwerty</ccc>
<ccc id="24" ></ccc>
</aaa>
이제 XPath를 사용합니다.
//ccc[.='qwerty']
올바른 예상 결과를 얻습니다 .
Name Value
ccc qwerty
이제 XPath를 사용합니다.
//aaa[.='qwerty']
내가 얻을 예상치 못한 결과를 :
Name Value
aaa
aaa qwerty
제가 특히 관심이 있는 것은 해당 값을 가진 요소 를 선택 하는 방법 입니다.
XPath :
//*[.='qwerty']
나는 매우 이상한 예기치 않은 결과를 얻습니다 .
Name Value
aaa
bbb
ddd qwerty
bbb qwerty
aaa qwerty
ccc qwerty
누군가 이러한 결과를 설명하고 더 많은 예상 결과를 얻기 위해 XPath 표현식을 수정하는 방법을 설명 할 수 있습니까?
. =
는 XPath 와 다르기 때문text() =
입니다. 참조 텍스트 노드와 일치하는 문자열 값을 일치와 다른 이유를 알아.