xpath Tutorial
Erste Schritte mit xpath
Suche…
Bemerkungen
XPath ist eine Sprache zum Adressieren von Teilen eines XML-Dokuments.
Es wird in XSLT verwendet und ist eine Teilmenge von XQuery. Bibliotheken sind auch für die meisten anderen Programmiersprachen verfügbar.
XPath ist ein internationaler Standard mit von W3C veröffentlichten Spezifikationen:
- XPath 1.0: XML Path Language (XPath), Version 1.0
- XPath 2.0: XML Path Language (XPath) 2.0 (zweite Ausgabe)
- XPath 3.0: XML Path Language (XPath) 3.0
Versionen
Ausführung | Veröffentlichungsdatum |
---|---|
1,0 | 1999-12-16 |
2,0 | 2007-01-23 |
3,0 | 2014-04-08 |
3.1 (W3C-Kandidatenempfehlung) | 2015-12-17 |
Beispiel-XML (ohne Namespaces)
Hier ist ein Beispiel-XML, gegen das Beispiel-XPaths geschrieben werden können:
<r>
<e a="1"/>
<f a="2" b="1">Text 1</f>
<f/>
<g>
<i c="2">Text 2</i>
Text 3
<j>Text 4</j>
</g>
</r>
Text auswählen
Für das Beispiel-XML (ohne Namespaces):
Diese XPath,
/r/f/text()
wählt den Textknoten mit diesem String-Wert aus:
"Text 1"
Und dieser XPath,
string(/r/f)
gibt den String-Wert von f
, der auch:
"Text 1"
Wählen Sie ein Element aus
Für das Beispiel-XML (ohne Namespaces):
Diese XPath,
/r/e
wird dieses Element auswählen:
<e a="1"/>
Allgemeine HTML-Operationen
Wenn die Eingabe HTML DOM ist
<html>
<body>
<a>link</a>
<div class='container' id='divone'>
<p class='common' id='enclosedone'>Element One</p>
<p class='common' id='enclosedtwo'>Element Two</p>
</div>
</body>
</html>
Suchen Sie ein Element mit einer bestimmten ID auf der gesamten Seite
//*[@id='divone'] # Returns <div class='container' id='divone'>
Suchen Sie ein Element mit einer bestimmten ID in einem bestimmten Pfad
/html/body/div/p[@id='enclosedone'] # Returns <p class='common' id='enclosedone'>Element One</p>
Wählen Sie ein Element mit einer bestimmten ID und Klasse aus
//p[@id='enclosedone' and @class='common'] # Returns <p class='common' id='enclosedone'>Element One</p>
Wählen Sie den Text eines bestimmten Elements aus
//*[@id='enclosedone']/text() # Returns Element One
Xpaths in der Browserkonsole testen
Eine schnelle Methode zum Testen Ihres xpath ist in der Konsole Ihres Browser-Entwicklertools.
Format ist
$x('//insert xpath here')
$ - Gibt an, dass es sich um einen Selektor handelt.
x - gibt an, dass xpaths verwendet wird
Beispiel:
$x("//button[text() ='Submit']")
Bei Eingabe dieses Befehls werden alle Vorkommen von Elementen zurückgegeben, bei denen es sich um Schaltflächen handelt, deren Text gleich "Senden" ist.