XPath匹配通配符?

3
寻找使用通配符的xpath,其中属性是路径,并且我希望所有以“text”结尾的路径都能被匹配上。
例如: ``
- `jcr:content/MainParsys` 是常量。 - `*` 是我想使用通配符的地方(两者之间的所有路径)。 - `text` 是我要匹配的路径中的最后一部分。
此外,还有以 `/textIsRich` 结尾的路径需要避免。
搜索: ``
避免: ``
1个回答

3

XPath 1.0

这是XPath 1.0,

//Property[@name[  starts-with(.,'jcr:content/MainParsys/')
         and substring(., string-length(.) - string-length('/text') +1) = '/text']]

将选择所有具有以'jcr:content/MainParsys/'开头且以'/text'结尾的name属性值的Property元素(使用标准的XPath 1.0无ends-with()函数的解决方法)。

XPath 2.0

XPath 2.0具有ends-with()函数,还有正则表达式函数,如matches(),可以匹配有效通配符(例如.*)。


@matt:哎呀,你当然是对的。回答已经更正了。谢谢。 - kjhughes

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接