匹配web.xml中上下文参数的XPATH表达式
将使用什么xpath表达式来匹配上下文参数和参数名foo,如下所示:匹配web.xml中上下文参数的XPATH表达式,xml,xpath,Xml,Xpath,将使用什么xpath表达式来匹配上下文参数和参数名foo,如下所示: <web-app> <context-param> <param-name>foo</param-name> <param-value>bar</param-value> <description></description> </context-param> ..... <
<web-app>
<context-param>
<param-name>foo</param-name>
<param-value>bar</param-value>
<description></description>
</context-param>
.....
</web-app>
福
酒吧
.....
/web-app/context-param[param-name/text()='foo']
/web-app/context-param[param-name/text()='foo']
//context-param[param-name='foo']
我应该这样做//context param
要求列出所有节点的列表,这些节点是名为“context param”的context节点(即文档根)的后代。方括号中的位然后过滤该列表中的上下文参数节点,这些节点具有名为“param name”和文本“foo”的直系后代='foo'
是/text()='foo'
的缩写
另外,要注意实际使用的名称空间
我应该这样做//context param
要求列出所有节点的列表,这些节点是名为“context param”的context节点(即文档根)的后代。方括号中的位然后过滤该列表中的上下文参数节点,这些节点具有名为“param name”和文本“foo”的直系后代='foo'
是/text()='foo'
的缩写
另外,要注意实际使用的名称空间 您需要从
[/param name='foo']
中删除“/”才能返回任何内容。(应该是/web app/context param[param name='foo']
)考虑到命名空间问题,我最终得到了/*[local-name()='context-param'][*[local-name()='param-name']='foo']
您需要从[/param name='foo']
中删除“/”才能返回任何内容。(应该是/web app/context param[param name='foo']
)考虑到命名空间问题,我最终得到了/*[local-name()='context-param'][*[local-name()='param-name']='foo']