Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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
使用XPath获取内部XML?_Xpath - Fatal编程技术网

使用XPath获取内部XML?

使用XPath获取内部XML?,xpath,Xpath,这是我的XML <my_xml> <record> <p>hello <b>world</b> this is some html</p> </record> </my_xml> 你好,世界这是一些html 我可以使用XPath返回以下内容吗 <p>hello <b>world</b> this is s

这是我的XML

    <my_xml>
     <record>
      <p>hello <b>world</b> this is some html</p>
     </record>
    </my_xml>

你好,世界这是一些html

我可以使用XPath返回以下内容吗

    <p>hello <b>world</b> this is some html</p>
这是一些html


答案是否定的。XPath无法实现这一点,但是,一旦您选择了父节点(即示例中的“记录”),您就应该能够使用解析XML所用的任何语言对其进行操作。不幸的是,这可能并不“容易”

听起来您可能想要类似于属性的东西,但是对于XMLDOM而不是HTMLDOM。不幸的是,XML DOM中没有类似的内容。如果不关心节点本身,可以使用属性;在您的示例中,您会得到
“hello world这是一些html”
,这似乎不是您想要的


检查,其中包括一个Java解析算法。似乎您需要用任何一种语言编写一个类似的算法来解析XML。

快速的答案是,不。XPath无法实现这一点,但是,一旦您选择了父节点(即示例中的“record”),您应该能够用任何一种语言来解析XML。不幸的是,这可能并不“容易”

my_xml/record/child::*
听起来您可能想要类似于属性的东西,但是对于XMLDOM而不是HTMLDOM。不幸的是,XML DOM中没有类似的内容。如果不关心节点本身,可以使用属性;在您的示例中,您会得到
“hello world这是一些html”
,这似乎不是您想要的

检查,其中包括一个Java解析算法。似乎您需要用任何一种语言编写类似的算法来解析XML

my_xml/record/child::*
子元素::*选择上下文节点的所有元素子元素

子元素::*选择上下文节点的所有元素子元素

对于将来寻找此功能的任何人来说,这很有可能使用点来实现,点将以文本形式返回整个节点内容(至少在MSSQL xpath中是这样)


对于将来寻找这个的任何人来说,使用一个点是非常有可能的,它将以文本形式返回整个节点内容(至少在MSSQL xpath中是这样)


您可以获取
p
节点,然后将其序列化回字符串。您在哪个上下文(应用程序、语言等)中使用xpath?这取决于“返回”的含义。您实际上是如何执行XPath表达式的?您使用的是什么编程语言和什么工具/库,您是否可以发布您迄今为止尝试过的相关代码片段?您使用的是哪种语言,如
Ruby
Pyhton
等?您可以获得
p
节点,然后可以将其序列化回字符串。您在哪个上下文(应用程序、语言等)中使用xpath?这取决于“返回”的含义。您实际上是如何执行XPath表达式的?您使用的是什么编程语言和什么工具/库,您能发布到目前为止尝试过的相关代码片段吗?您使用的是哪种语言,如
Ruby
Pyhton
等?大多数语言已经为XML解析器提供了将节点对应的对象序列化为XML的方法,如
asXML
。大多数语言已经为XML解析器提供了将节点对应的对象序列化为XML的方法,如
asXML