当前位置 : 主页 > 网页制作 > xml >

xml – 需要XPath结束 – 具有功能

来源:互联网 收集:自由互联 发布时间:2021-06-13
我无法使用XPath函数.我应该只提取 XML文件中的条目,它们的名称以字母’z’结尾,我无法使其工作.我是xmllint用cat命令操作文件. ends-with()仅适用于XPath 2.0,我很确定服务器只有XPath 1.0,所以
我无法使用XPath函数.我应该只提取 XML文件中的条目,它们的名称以字母’z’结尾,我无法使其工作.我是xmllint用cat命令操作文件.

ends-with()仅适用于XPath 2.0,我很确定服务器只有XPath 1.0,所以我尝试输入这个命令:

cat //country/city[substring(@name, string-length(@name) - string-length('z') +1)]/name

但我一直收到错误,我不确定我是不是写得不正确,或者说这不是正确的方法.

您的XPath缺少检查substring()的返回值的步骤,无论它是否等于预期的字符串结束值“z”.所以正确的XPath将是:

//country[substring(@name, string-length(@name) - string-length('z') +1) = 'z']/@name

由于-string-length(‘z’)1等于0,因此可以省略该部分以获得更简单的XPath,类似于other answer中@Kirill Polishchuk发布的XPath.

网友评论