Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.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
Xml 检查hpricot中某个元素的空性_Xml_Ruby_Parsing_Hpricot - Fatal编程技术网

Xml 检查hpricot中某个元素的空性

Xml 检查hpricot中某个元素的空性,xml,ruby,parsing,hpricot,Xml,Ruby,Parsing,Hpricot,假设这是位置元素: 废话 它可以是空的,如下所示: 是否有方法检测空元素中的反斜杠以避免返回它?如果您真正想要的是位置标记中的文本,您可以使用正确的XPath轻松找到它们: doc.search('//location/text()') 如果出于某种原因,您确实需要location元素本身,请使用以下命令: doc.search('//location/text()/..') 在语义上与相同,应按此处理。要查找所有空标记,只需跳过没有任何子节点(包括文本)的元素。非常感谢,它将以这种方式修

假设这是位置元素: 废话

它可以是空的,如下所示:


是否有方法检测空元素中的反斜杠以避免返回它?

如果您真正想要的是位置标记中的文本,您可以使用正确的XPath轻松找到它们:

doc.search('//location/text()')
如果出于某种原因,您确实需要location元素本身,请使用以下命令:

doc.search('//location/text()/..')

在语义上与
相同,应按此处理。要查找所有空标记,只需跳过没有任何子节点(包括文本)的元素。

非常感谢,它将以这种方式修复,足够了。事实上,从我的浏览器中读取xml时,它实际上会显示一个,但hpricot只是重新打开标记并将文档的其余部分括起来;因此出现了问题。考虑到这一点,flickr api方法涉及:。什么时候是空的,hpricot返回它,就像它得到了……等等……之类的东西一样,用词来说,就像位置包含的内容超出了它应该包含的内容一样。从浏览器中,您可以看到flickr正在返回。非常混乱。