Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过Xpath组合不同的值返回 _Xpath_Xpath 2.0 - Fatal编程技术网

如何通过Xpath组合不同的值返回

如何通过Xpath组合不同的值返回 ,xpath,xpath-2.0,Xpath,Xpath 2.0,如何为该段落编写Xpath,使其返回“€261-”。所有alt标记的组合字符串。使用 <p class="pd-price"> <img alt="€" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/euro_small.png"> <img class="offsetStandard" alt="2" src="http://www.redcoon.es/templates/tpl

如何为该段落编写Xpath,使其返回“€261-”。所有alt标记的组合字符串。

使用

<p class="pd-price">
    <img alt="€" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/euro_small.png">
    <img class="offsetStandard" alt="2" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/2.png">
    <img class="offsetStandard" alt="6" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/6.png">
    <img class="offsetStandard" alt="1" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/1.png">
    <img class="offsetStandard" alt="-" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/minus_point.png">
</p>
这将首先选择所有alt属性的文本,然后将其组合成字符串

<p class="pd-price">
    <img alt="€" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/euro_small.png">
    <img class="offsetStandard" alt="2" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/2.png">
    <img class="offsetStandard" alt="6" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/6.png">
    <img class="offsetStandard" alt="1" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/1.png">
    <img class="offsetStandard" alt="-" src="http://www.redcoon.es/templates/tpl/img/pd/pd-price/minus_point.png">
</p>
这将首先选择所有alt属性的文本,然后在Xpath 2中将其组合成字符串

在XPath2中,您有


任何其他函数而不是字符串连接。解析器不支持此函数。我们可以用concat吗?用concat你可以像
concat一样使用它(p/img[1]/@alt,p/img[2]/@alt,p/img[3]/@alt,p/img[4]/@alt,p/img[5]/@alt,p/img[6]/@alt,p/img[7]/@alt)
。(如果concat调用中的img多于html中的img,则忽略它们)。但是最好切换到另一个支持最基本函数的解析器。如果它支持xpath 2,您还可以将
p/
移出,使其更简单一点
p/concat(img[1]/@alt,img[2]/@alt,img[3]/@alt,img[4]/@alt,img[5]/@alt,‌​img[6]/@alt,img[7]/@alt)
任何其他函数,而不是字符串连接。解析器不支持此函数。我们可以用concat吗?用concat你可以像
concat一样使用它(p/img[1]/@alt,p/img[2]/@alt,p/img[3]/@alt,p/img[4]/@alt,p/img[5]/@alt,p/img[6]/@alt,p/img[7]/@alt)
。(如果concat调用中的img多于html中的img,则忽略它们)。但是最好切换到另一个支持最基本函数的解析器。如果它支持xpath 2,您还可以将
p/
移出,使其更简单一点
p/concat(img[1]/@alt,img[2]/@alt,img[3]/@alt,img[4]/@alt,img[5]/@alt,‌​img[6]/@alt,img[7]/@alt)
string-join(p[@class='pd-price']/img/@alt, '')