Xml 如果第一个节点没有';XPath查询中是否不存在?
如果第一个节点不存在,我想返回一个辅助节点名称,例如:Xml 如果第一个节点没有';XPath查询中是否不存在?,xml,xpath,Xml,Xpath,如果第一个节点不存在,我想返回一个辅助节点名称,例如: 返回xpath_查询(“/root/(蓝色|红色)”; //返回/root/蓝色,如果不存在/root/红色 这可能吗 谢谢回答:是的 这是一个有效的XPath 2.0表达式: /root/(blue|red) 含义:蓝色和红色根元素的子元素 如果需要一个或另一个(如果不存在),可以依赖文档顺序,如: /root/(blue|red)[1] 或者更明确地说,比如: /root/(if (blue) then blue else red)
返回xpath_查询(“/root/(蓝色|红色)”;
//返回/root/蓝色,如果不存在/root/红色
这可能吗
谢谢回答:是的 这是一个有效的XPath 2.0表达式:
/root/(blue|red)
含义:蓝色
和红色
根元素的子元素
如果需要一个或另一个(如果不存在),可以依赖文档顺序,如:
/root/(blue|red)[1]
或者更明确地说,比如:
/root/(if (blue) then blue else red)
XPath 1.0翻译:
/root/*[self::blue|self::red]
/root/*[self::blue|self::red][1]
/root/*[self::blue|self::red[not(../blue)]]
回答:是 这是一个有效的XPath 2.0表达式:
/root/(blue|red)
含义:蓝色
和红色
根元素的子元素
如果需要一个或另一个(如果不存在),可以依赖文档顺序,如:
/root/(blue|red)[1]
或者更明确地说,比如:
/root/(if (blue) then blue else red)
XPath 1.0翻译:
/root/*[self::blue|self::red]
/root/*[self::blue|self::red][1]
/root/*[self::blue|self::red[not(../blue)]]
当我尝试
/colors/(blue | red)[1]/description
时,我得到以下错误:DOMXPath::query():表达式无效。有什么想法吗?谢谢,我正在使用XPath1.0。汤姆:也许你有一个XPath1.0引擎。尝试那些XPath 1.0表达式。我在尝试/colors/[self:blue | self:red]/description
时也会遇到同样的错误。嗯,吃,工作。如果我想选择blue(如果存在),并且只在blue不存在时才返回红色,那么您的第三个XPath 1.0示例是最简洁的方法吗?谢谢当我尝试/colors/(蓝色|红色)[1]/description
时,我得到了以下错误:DOMXPath::query():无效表达式。有什么想法吗?谢谢,我正在使用XPath1.0。汤姆:也许你有一个XPath1.0引擎。尝试那些XPath 1.0表达式。我在尝试/colors/[self:blue | self:red]/description
时也会遇到同样的错误。嗯,吃,工作。如果我想选择blue(如果存在),并且只在blue不存在时才返回红色,那么您的第三个XPath 1.0示例是最简洁的方法吗?谢谢