微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

xml – xpath小写 – 是否有xpath函数来执行此操作?

例如,对于下面的xml

<REPORT ID="TimekeeperListEdited" BoundId="Timekeeper" BoundType="ReportObject" />

如何将第一条记录与xpath匹配,如// * [@ BoundId =’TimeKeeper’].是否有xpath函数来执行此操作?

解决方法

如果您使用的是XPath 2.0,则可以使用小写()函数

//*[lower-case(@BoundId) = 'timekeeper']

如果您的使用仅限于XPath 1.0,您可以使用translate()函数转换案例,该函数替换字符串中的每个字符(第一个参数),该字符与第二个参数中的任何字符匹配,并且字符出现在相同的位置中作为第三个参数传递的字符串:

//*[translate(@BoundId,'ABCDEFGHIJKLMnopQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz') = 'timekeeper']

或者,如果您正在处理特定情况并且您正在测试的字符串是固定的(而不是来自程序中其他部分的变量),您只需翻译您感兴趣的字符:

//*[translate(@BoundId,'k','K') = 'TimeKeeper']

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。