xml - 给定键值的 XPath?

标签 xml xpath coldfusion

我有一个从下面创建的 XML 对象:

<?xml version="1.0" encoding="UTF-8"?>
<pdfDoc>
  <XMLOutput>
    <webservice>
      <residentLocationData>
        <addressDataMap>
          <entry>
            <key>Zip</key>
            <value>08094</value>
          </entry>
          <entry>
            <key>CountyCode</key>
            <value>015</value>
          </entry>
          <entry>
            <key>StateName</key>
            <value>New Jersey</value>
          </entry>
        </addressDataMap>
      </residentLocationData>
    </webservice>
  </XMLOutput>
<pdfDoc>

我正在尝试提取“New Jersey”的字符串值。为了获取“value”元素本身,我使用:

//addressDataMap/entry/key[text() = 'StateName']/following-sibling::value

但是我还没有在网上看到任何说明如何仅使用 XPath 本身来获取该元素的 xmlText 的字符串值的内容。我可以使用我正在使用的语言(Coldfusion)中的代码获取该字符串:

<cfset theState = xmlSearch(L.xmlObj, "//addressDataMap/entry/key[text() = 'StateName']/following-sibling::value")[1].xmlText>

但我不清楚如何仅使用 XPath 获取字符串“New Jersey”。

最佳答案

这个 XPath,

//entry[key='StateName']/value/text()

将根据请求选择与'StateName' key关联的“新泽西”

关于xml - 给定键值的 XPath?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67309032/

相关文章:

python - 如何使用 xpath/css 选择器单击 drupal 8 网站中的动态链接,同时通过 Selenium 和 Python 实现自动化

coldfusion - 如果行是当前日期,则插入 anchor

php - 我应该如何存储不会经常更改的文本数据?

c# - 使用命名空间查询 XML 的问题

xml - 在 PIG 中使用 xpath 提取 XML 中的属性值

Python LXML.HMTL Xpath 返回空列表

regex - Coldfusion 解析文本中的 URL

coldfusion - 如何删除 RSS 源中的奇怪字符?

android - 如何在 Android 中创建静态(仅使用 xml 文件)ExpandableListView

java - 使用输入流从 XML 文件读取属性?