2010-03-18 11 views
26

¿Hay alguna forma de escribir una expresión XPath para seleccionar el contenido del elemento?En XPath cómo seleccionar el contenido del elemento

p. Ej.

<Element>xxx</Element> 

Suponiendo que puedo escribir XPath (/ Elemento) para obtener Element ¿cómo puedo ajustar el XPath para obtener xxxx regresó en lugar de la envoltura elemento?

EDITAR/RESPUESTA

Para hacer esto en el mundo dom4j utilizar el Element.valueOf(String xpathExpression) en lugar de los métodos .selectXXX().

Respuesta

37

utilizar el elemento value-of:

<xsl:value-of select="/Some/Path/To/Element"/> 

Si sólo se puede especificar un XPath a continuación, utilizar la función text así:

/Some/Path/To/Element/text()

+0

Gracias pero solo quiero una expresión XPath. No estoy usando XSLT, solo dom4j con jaxen dentro del código de Java. –

+0

@Mike P: Ah, ya veo, he editado mi respuesta para reflejar eso. –

+0

Ah, en dom4j resulta que text() devuelve un elemento DefaultText. Sin embargo, encontré una función en dom4j llamada valueOf (XPath xpath) que hace exactamente lo que hace tu primer ejemplo (representación en cadena del resultado de XPath) por lo que funcionó bien. Gracias de nuevo. –

1

Un poco demasiado tarde, pero. ..

data(Element) 

... también debería estar bien.

Cuestiones relacionadas