xml - Concat 函数与 XPath 中的字符串

标签 xml xpath xpath-1.0

我正在尝试使用 XPath 获取完整地址。我是 XPath 的新手。这是我到目前为止所做的:

<p class="adr" prop1="address">
<span class="street-address" name="streetname">2222 Warnar Ave</span>
<span class="country" name="country">USA, </span>
<span name="State">CA</span>
<span name="zip">1111</span>
</p>

我的 XPath

/p/span/text()

像数组一样的结果:

Text='2222 Warnar Ave'
Text='USA,'
Text='CA'
Text='1111'

我希望结果是一个完整的一行地址

2222 Warnar Ave USA, CA 1111

我在我的 XPath 中使用了 concat() 但没有任何显示!

最佳答案

XPath 1.0 解决方案

concat(/p/span[1],' ',/p/span[2],' ',/p/span[3],' ',/p/span[4])

当然,您可以指定 /p/span[@class='street-address'] 等代替 /p/span[1]

XPath 2.0 解决方案

string-join(/p/span, ' ')

关于xml - Concat 函数与 XPath 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38960410/

相关文章:

c# - 从 XML 文档中获取值到字符串数组

带有 text() 和 SimpleXMLElement->xpath 的 php xpath 不符合 xpath 预期结果

xml - Xpath 计数非空后代

xpath - xpath表达式多次选择同一父节点

java - 将我的 java 和 xml 文件分类到文件夹中

xml - Java object graph -> xml 当需要反转对象关联的方向时

java - Selenium - Java - 元素获得点击但不执行操作

javascript - 在 Chrome 中使用 JavaScript 读取 XML 文件

ios - Cordova Plugin.xml 将未定义的键写入 info.plist

python - 即使使用 Selenium 和 Python 有多个具有相同类名的元素,如何通过类名识别元素