Xml XPath能否匹配元素的某些部分';她叫什么名字?
我想这样做: //*傅 它返回名称以fu结尾的所有节点,例如Xml XPath能否匹配元素的某些部分';她叫什么名字?,xml,xpath,Xml,Xpath,我想这样做: //*傅 它返回名称以fu结尾的所有节点,例如和,但不是,执行以下操作: //*[ends-with(name(), 'fu')] 要获得一个好的XPath参考,请查看。这个答案适用于没有等效于的 以下XPath 1.0表达式选择xml文档中名称以字符串“fu”结尾的所有元素: 迪米特里·诺瓦切夫的回答让我很为难,因为它不会返回比赛。我知道您的XPath必须有一个部分告诉您“fu”的长度为2 建议使用字符串长度('fu')来确定子字符串的内容 对于那些无法通过他的答案获得结果并且
和
,但不是
,执行以下操作:
//*[ends-with(name(), 'fu')]
要获得一个好的XPath参考,请查看。这个答案适用于没有等效于的 以下XPath 1.0表达式选择xml文档中名称以字符串“fu”结尾的所有元素:
迪米特里·诺瓦切夫的回答让我很为难,因为它不会返回比赛。我知道您的XPath必须有一个部分告诉您“fu”的长度为2 建议使用字符串长度('fu')来确定子字符串的内容 对于那些无法通过他的答案获得结果并且需要使用xpath 1.0解决的人:
/*[子字符串(name(),字符串长度(name())-字符串长度('fu')+1)='fu']
查找以“fu”结尾的元素的匹配项
或
/*[子字符串(name(),字符串长度(name())-字符串长度('Position')+1)='Position']
查找与以“位置”结尾的元素的匹配项
这只是一个XPath 2.0解决方案。请注意,您可以使用
local-name()
在复杂的XML中省略名称空间。谢谢您的宝贵意见。我试着用lxml来实现这一点,它支持以结尾,但不支持元素名。你的回答正是我需要的@用户766308欢迎:)
//*[substring(name(),string-length(name())-1) = 'fu']