XPATH:如何根据部分“product_name”值从xml提要中选择“产品”

时间:2013-07-24 20:48:01

标签: xpath

感谢您对以下方面的帮助: 我有一个大型的xml产品数据源,并希望隔离一些产品,以便根据标题中的搜索关键字将它们上传到我的eshop。 例如,我在xml数据源中有1.000个产品,具有以下结构:

<product>
 <product_id>18491</product_id>
 <product_name><![CDATA[REFLECTIONS ΔΑΧΤΥΛΙΔΙ]]></product_name>
 <category><![CDATA[ΚΟΣΜΗΜΑΤΑ>ΔΑΧΤΥΛΙΔΙΑ]]></category>
 <shop_url><![CDATA[http://myshop.gr]]></tracking_url>
 <image_url>http://myshop.gr/1R0F001-1000x1000_488x489$.jpg</image_url>
 <price>30</price>
 <program_name>myshop</program_name>
</product>

让我们说我只想选择“product_name”标签中含有关键字“REFLECTIONS”的产品。

此外,我可以通过多个关键字选择一堆产品(即在“product_name”标签中有关键字“REFLECTIONS”或“SOMETHING ELSE”或“OTHER VALUE”或....的产品)?

我如何使用XPath做到这一点?

我提前谢谢你了!

1 个答案:

答案 0 :(得分:1)

您可以使用contains()功能执行此操作:

/path/to/product[contains(product_name, 'REFLECTIONS')]

如果您想拥有多个关键字,可以将它们与or

结合使用
/path/to/product[contains(product_name, 'REFLECTIONS') or contains(product_name, 'SECONDKEYWORD')]