Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> xPath: łącze do elementów z wartością (swoją)..., ...a nie dzieci
ignition
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 14.06.2004

Ostrzeżenie: (0%)
-----


mając plik xml:
  1. <plik>
  2.  
  3. <person>
  4. <name>Blabla</name>
  5.  
  6. <inf>
  7. <about>I'm <strong> strong </strong></about>
  8. <desc> some information
  9. <i id='1'>I like you</i>
  10. <i id='2'>blabla</i>
  11. </desc>
  12.  
  13. <zle>
  14. <z id='1'>text1</z>
  15. <z id='2'>text2</z>
  16. </zle>
  17.  
  18. </inf>
  19.  
  20. </person>
  21.  
  22. </plik>

Chcę się dostać przez xPatha do elementów które posiadają swoją wartość, ale nie w ich dzieciach. Czyli pytanie powinno w tym przypaku nie zwrócić łącza np. do <zle>, który nie posiada sam w sobie wartości, lecz oddzielnie do jego dzieci które posiadają wartość <z>. Stosowłem min. pytania *//*[text()] oraz *//*[count(text()) = 1] ale one są złe.

Ten post edytował ignition 28.10.2005, 21:23:57
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
orson
post
Post #2





Grupa: Zarejestrowani
Postów: 548
Pomógł: 2
Dołączył: 19.07.2003

Ostrzeżenie: (0%)
-----


witam ...

hmm ... chcesz otrzymać text zawarty w ostatnich atrybutach w ścieżce (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) czyli np: Blabla, I like you albo text1 (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? jeżeli tak to twoje pytanie
Kod
*//*[count(text()) = 1]

jest poprawne ... z twojego dokumentu otrzymałem taki wynik:
Kod
Array
(
    [0] => SimpleXMLElement Object
        (
            [0] => Blabla
        )

    [1] => SimpleXMLElement Object
        (
            [strong] =>  strong
        )

    [2] => SimpleXMLElement Object
        (
            [0] =>  strong
        )

    [3] => SimpleXMLElement Object
        (
            [0] => I like you
        )

    [4] => SimpleXMLElement Object
        (
            [0] => blabla
        )

    [5] => SimpleXMLElement Object
        (
            [0] => text1
        )

    [6] => SimpleXMLElement Object
        (
            [0] => text2
        )
)


pozdrawiam
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.10.2025 - 13:35