Ricerca…


Osservazioni

XPath è un linguaggio per indirizzare parti di un documento XML.

È utilizzato in XSLT ed è un sottoinsieme di XQuery. Le librerie sono disponibili anche per la maggior parte degli altri linguaggi di programmazione.

XPath è uno standard internazionale con specifiche pubblicate dal W3C:

Versioni

Versione Data di rilascio
1.0 1999/12/16
2.0 2007-01-23
3.0 2014/04/08
3.1 (Raccomandazione del Candidato W3C) 2015/12/17

XML di esempio (senza spazi dei nomi)

Ecco alcuni esempi di XML rispetto agli esempi di XPath che possono essere scritti:

<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>

Seleziona il testo

Per l'XML di esempio (senza spazi dei nomi):

Questo XPath,

/r/f/text()

selezionerà il nodo di testo con questo valore stringa:

"Text 1"

E questo XPath,

string(/r/f)

restituirà il valore stringa di f , che è anche:

"Text 1"

Seleziona un elemento

Per l'XML di esempio (senza spazi dei nomi):

Questo XPath,

/r/e

selezionerà questo elemento:

<e a="1"/>

Operazioni HTML comuni

Se il DOM HTML di input è

<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>

Trova un elemento con un ID specifico nell'intera pagina

//*[@id='divone'] # Returns <div class='container' id='divone'>

Trova un elemento con un ID specifico in un particolare percorso

/html/body/div/p[@id='enclosedone'] # Returns <p class='common' id='enclosedone'>Element One</p>

Seleziona un elemento con un particolare ID e classe

//p[@id='enclosedone' and @class='common'] # Returns <p class='common' id='enclosedone'>Element One</p>

Seleziona il testo di un particolare elemento

//*[@id='enclosedone']/text() # Returns Element One

Testare Xpath nella console del browser

Un modo rapido per testare xpath è nella console dello sviluppatore del browser.

Il formato è

   $x('//insert xpath here')

$ - specifica che è un selettore.

x - specifica che sta usando xpaths

Esempio:

$x("//button[text() ='Submit']")

Quando viene immesso questo comando, verranno restituite tutte le occorrenze di elementi che sono pulsanti con testo uguale a Invia.



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow