Jak mogę to zrobić z XPath:
//bookstore/book/title or //bookstore/city/zipcode/title
Po prostu //titlenie zadziała, bo ja też//bookstore/magazine/title
ps Widziałem wiele przykładów, ale głównie z atrybutami lub strukturą pojedynczego węzła.
Jak mogę to zrobić z XPath:
//bookstore/book/title or //bookstore/city/zipcode/title
Po prostu //titlenie zadziała, bo ja też//bookstore/magazine/title
ps Widziałem wiele przykładów, ale głównie z atrybutami lub strukturą pojedynczego węzła.
Odpowiedzi:
Wszystkie titlewęzły z zipcodelub bookwęzłem jako nadrzędnym:
Wersja 1:
//title[parent::zipcode|parent::book]
Wersja 2:
//bookstore/book/title|//bookstore/city/zipcode/title
|jest operatorem zbioru sum .
oroznacza, że można go zlokalizować a or b or both. Logiczne xor(eXclusive OR) oznacza, że może zostać zlokalizowany przez either a or b, but not both. Logiczne andoznacza, że można go zlokalizować both a and b.
Jeśli chcesz wybrać tylko jeden z dwóch węzłów z operatorem unii, możesz skorzystać z tego rozwiązania:
(//bookstore/book/title | //bookstore/city/zipcode/title)[1]
(i )[1]oznacza wybranie tylko jednego z dwóch?!?!
orlub w innych językach |, więc gdyby istniały oba węzły, zawsze zwracałby pierwszy węzeł?
Jeśli element ma dwie ścieżki xpath. Następnie możesz napisać dwie ścieżki x, jak poniżej:
xpath1 | xpath2
Na przykład:
//input[@name="username"] | //input[@id="wm_login-username"]