如何在xpath中添加注释?

时间:2009-11-04 21:04:55

标签: xpath

例如我有一个xpath并希望在它附近添加一个注释来识别它。

/html/body/div/table/tr/td/a{this is a link}

3 个答案:

答案 0 :(得分:15)

XPATH 2.0确实允许评论。

来自http://www.w3.org/TR/xpath20/#comments

  

注释可用于为a提供信息性注释   表达。注释只是词法结构,不会影响   表达处理。

     

评论是字符串,由符号(::)分隔。评论可能   嵌套。

     

如果允许可忽略的空格,可以使用注释(请参阅   A.2.4.1默认空白处理)。

     

以下是评论的示例:

     

(: Houston, we have a problem :)

如果我们需要解析包含表情符号的XML,那就是坏消息! : - )

暂且不谈 - 因为我在使用Tibco Designer for BusinessWorks v5.x的上下文中查找了这些信息,其中可以使用以下命令在TIBCO Designer XPATH公式构建器中添加注释:

{-- Houston, we've had a problem --}

答案 1 :(得分:14)

不是注释语法,但您可以将字符串文字作为谓词,其值为true(imho),不应更改表达式的结果。我不知道这是否有很大的性能缺陷。

/html/body/div/table["this is"]["a table"]/tr/td/a["this is a link"]

但是像mjv说的那样,我也会坚持使用宿主语言的语法。

答案 2 :(得分:6)

2019年编辑
正如@ Sepster的回复和其他地方所指出的那样,从 XPath 2.0 开始,用他们可爱的“笑脸”观察语法就可以发表评论。我编辑这个回复只是迟了大约10年才提到非常有用的事实; - )

原始回复c。 2009(假设XPATH 1.0)
不,XPATH语法不允许在路径字符串中嵌入注释。

这通常不是一个重要的限制,因为路径通常很短,并且可以在宿主语言的特定语法(XSLT,C#,等等......)附近放置注释。