Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 基于节点()的Xpath匹配包含()内容_Ruby_Xpath - Fatal编程技术网

Ruby 基于节点()的Xpath匹配包含()内容

Ruby 基于节点()的Xpath匹配包含()内容,ruby,xpath,Ruby,Xpath,我有以下HTML结构(有许多块使用相同的体系结构): 什么都匹配。如何使用节点()[1]文本作为锚定来匹配此项?关于您尝试的Xpath,而不是返回文本节点子节点的文本(),只需使用: //span[@id="mySpan"]/i/node()[1][contains(.,"Price")] 对于最终目标,我建议如下: //span[@id="mySpan"]/i[contains(.,"Price")]/b 或者如果您特别希望与中的第一个节点匹配: //span[@id="mySpan"]/

我有以下HTML结构(有许多块使用相同的体系结构):


什么都匹配。如何使用
节点()[1]
文本作为锚定来匹配此项?

关于您尝试的Xpath,而不是返回文本节点子节点的
文本()
,只需使用

//span[@id="mySpan"]/i/node()[1][contains(.,"Price")]
对于最终目标,我建议如下:

//span[@id="mySpan"]/i[contains(.,"Price")]/b
或者如果您特别希望与
中的第一个节点匹配:

//span[@id="mySpan"]/i[contains(node(),"Price")]/b
//span[@id="mySpan"]/i[contains(.,"Price")]/b
//span[@id="mySpan"]/i[contains(node(),"Price")]/b