Xpath 包含而不是精确匹配

问题描述 投票:0回答:1

我使用以下 xpath 根据元素“group”值返回所有“path”元素:

//最近/项目/位置[group="rgrp1"]/路径

这很好用,但我寻找的匹配并不总是“rgrp1”,但它总是以“rgrp”开头。我实际上想做的不是寻找“rgrp1”的精确匹配,而是返回组元素包含“rgrp”的所有路径元素。 我尝试过使用 contains() 但我没有任何运气。以下是文件结构的示例:

<?xml version="1.0" encoding="utf-8"?>
<recent max="16">
    <item>
        <context>reports</context>
        <type>spreadsheet</type>
        <subtype>workbook</subtype>
        <location>
            <group>rgrp1</group>
            <hierarchy>h3</hierarchy>
            <node>n38</node>
            <path>//Reports/Test1</path>
        </location>
    </item>
    <item>
        <context>files</context>
        <type>frameset</type>
        <location>
            <group>fgrp6</group>
            <hierarchy>h1</hierarchy>
            <node>n205</node>
            <path>//Reports/Test2</path>
        </location>
    </item>
</recent>

任何帮助将不胜感激。

xml xpath
1个回答
0
投票

//项目[位置/组[包含(., 'rgrp')]]/位置/路径

这最终对我有用

© www.soinside.com 2019 - 2024. All rights reserved.