xpath                
            Encuentra nodos que tienen un atributo específico
        
        
            
    Buscar..
Sintaxis
-  Dentro de un nodo específico 
- / ruta a / elemento [@attribute_name]
 
 -  En cualquier parte del documento 
- //*[@Nombre del Atributo]
 
 -  Dentro de un nodo específico con algún valor 
- / ruta a / elemento [@ attribute_name = 'valor de búsqueda']
 - / ruta a / elemento [@ attribute_name = "valor de búsqueda"]
 
 -  En cualquier parte del documento con algún valor. 
- // * [@ nombre_atributo = 'cadena de búsqueda']
 - // * [@ attribute_name = "cadena de búsqueda"]
 
 
Parámetros
| Selector | función | 
|---|---|
| @Nombre del Atributo | Selecciona el valor del atributo para un nodo, si está presente | 
Observaciones
Usando [@attribute_name] podemos seleccionar nodos que tienen el atributo independientemente del valor.
Podemos usar cualquiera de las funciones o la combinación de las funciones, como comics con y minúsculas, por ejemplo, con este selector para satisfacer nuestras necesidades.
Encuentra nodos con un atributo específico
XML
<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>
 XPATH
/Galaxy/*[@name]
 o
//*[@name]
 SALIDA
<CelestialObject name="Earth" type="planet" />
<CelestialObject name="Sun" type="star" />
        Encuentra nodos con un valor de atributo específico
XML
<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>
 XPATH
/Galaxy/*[@name='Sun']
 o
//*[@name='Sun']
 SALIDA
<CelestialObject name="Sun" type="star" />
        Encuentra nodos por subcadena que coincida con el valor de un atributo
XML
<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>
 XPATH
/Galaxy/*[contains(@name,'Ear')]
 o
//*[contains(@name,'Ear')]
 Las comillas dobles también se pueden utilizar en lugar de comillas simples:
/Galaxy/*[contains(@name, "Ear")]
 SALIDA
<CelestialObject name="Earth" type="planet" />
        Encuentre nodos por subcadena que coincida con el valor de un atributo (no distingue mayúsculas y minúsculas)
XML
<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>
 XPATH
/Galaxy/*[contains(lower-case(@name),'ear')]
 o
//*[contains(lower-case(@name),'ear')]
 o, con la cadena entre comillas dobles:
//*[contains(lower-case(@name), "ear")]
 SALIDA
<CelestialObject name="Earth" type="planet" />
        Encuentre nodos por subcadena que coincidan con el inicio del valor de un atributo
XML
<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>
 XPATH
/Galaxy/*[starts-with(lower-case(@name),'ear')]
 o
//*[starts-with(lower-case(@name),'ear')]
 SALIDA
<CelestialObject name="Earth" type="planet" />
        Encuentre nodos por subcadena que coincidan con el final del valor de un atributo
XML
<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>
 XPATH
/Galaxy/*[ends-with(lower-case(@type),'tar')]
 o
//*[ends-with(lower-case(@type),'tar')]
 SALIDA
<CelestialObject name="Sun" type="star" />
    
    
    
    
    Modified text is an extract of the original Stack Overflow Documentation
        Licenciado bajo CC BY-SA 3.0
        No afiliado a Stack Overflow