gpt4 book ai didi

xslt - XPath 使用谓词选择多个元素

转载 作者:行者123 更新时间:2023-12-02 11:59:18 25 4
gpt4 key购买 nike

我有一个 XPath 查询正在执行我想要的操作,即选择“姓氏”和“给定名称”与给定谓词的并集(实际上是我需要的非此即彼,但该并集工作正常):

/header/authors/surname[./text() and @id='1']
|
/header/authors/given-names[./text() and @id='1']

然而,这对我来说似乎过于冗长,我觉得应该可以做一些更简洁的事情,例如:

/header/authors/(surname|given-names)[./text() and @id='1']

...但此版本不是有效的 XPath。

谁能告诉我一种更简洁的方式来编写原始 XPath 表达式,并且不需要将完整路径写入两次?

谢谢

理查德

最佳答案

首先,这是有效的 XPath 2.0:

/header/authors/(surname|given-names)[./text() and @id='1'] 

第二,这个XPath 1.0:

/header/authors/*[self::surname|self::given-names][text()][@id='1'] 

关于xslt - XPath 使用谓词选择多个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4079565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com