根据兄弟的值选择节点

时间:2015-06-29 13:57:55

标签: xml xpath

我需要XPath语法(用于simplexml)来搜索完全匹配的LayoutPosNo元素的内容,比如数字1001并返回兄弟Descrip元素中的文本。 LayoutPosNo都是唯一的,所以我只需要第一场比赛。

以下是XML的结构:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<data-set xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <record>
        <LayoutPosNo>10</LayoutPosNo>
        <Descrip>This is the red room</Descrip>
    </record>
    <record>
        <LayoutPosNo>993</LayoutPosNo>
        <Descrip>This is the yellow room</Descrip>
    </record>
    <record>
        <LayoutPosNo>1001</LayoutPosNo>
        <Descrip>This is the purple room</Descrip>
    </record>
</data-set>

1 个答案:

答案 0 :(得分:1)

以下XPath

/data-set/record[LayoutPosNo = 1001]/Descrip/text()

将选择

This is the purple room

按要求。