GOOGLE ADS

jueves, 21 de abril de 2022

Xpath: ¿cómo extraer una palabra en particular del texto ()?

¿Alguien puede ayudarme a extraer una palabra en particular del texto () de la expresión Xpath?

Actualmente estoy eliminando los nombres de las monedas del sitio web: https://coinmarketcap.com/currencies/bitcoin/

han usado la expresión Xpath:
(//h1[@class='priceHeading']/text())[1]

que tiene 'Bitcoin Price' Solo necesito la primera palabra 'Bitcoin' ignorando el resto.

No se preocupen por mis errores, soy un novato aquí:)


Solución del problema

Bueno, depende de en qué pueda confiar y qué versión de XPath esté utilizando. Si un espacio es suficiente o si desea una tokenización más sofisticada depende en gran medida de los datos y sus requisitos.

Con XPath 1.0 y posterior, puede usar substring-before()un espacio

substring-before((//h1[@class='priceHeading']/text())[1], ' ')

Con XPath 2.0 y versiones posteriores, puede usar tokenize()y seleccionar el primer elemento

tokenize((//h1[@class='priceHeading']/text())[1], ' ')[1]

Si sabe que siempre terminará con " Price", entonces podría usar ese valor en lugar de solo un espacio en substring-before()o tokenize(), o podría replace()" Price" con " ''":

replace((//h1[@class='priceHeading']/text())[1], ' Price', '')

No hay comentarios.:

Publicar un comentario

Flutter: error de rango al acceder a la respuesta JSON

Estoy accediendo a una respuesta JSON con la siguiente estructura. { "fullName": "FirstName LastName", "listings...