Google电子表格导入XML:如何获取XML中元素节点的所有名称

Google电子表格导入XML:如何获取XML中元素节点的所有名称,xml,xpath,google-sheets,Xml,Xpath,Google Sheets,我正在尝试使用importxml函数来导入XML <item> <name>James</name> <date>11/11/2016</date> <description>Student</description> </item> 我可以导入信息,但不能导入每个信息的名称 我想要像这样的东西 name date description James

我正在尝试使用importxml函数来导入XML

<item>
    <name>James</name>
    <date>11/11/2016</date>
    <description>Student</description>
</item>
我可以导入信息,但不能导入每个信息的名称

我想要像这样的东西

name      date       description
James     11/11/2016 Student

任何xPath函数都可以执行此操作?

您可以使用以下公式获取标题:

=unique(arrayformula(regexreplace(transpose(split(IMPORTDATA(A1),"><",false)),">.*|\/","")))
=unique(数组格式(regexreplace)(转置(split(IMPORTDATA(A1),“>.\/”,”))

基本上,我所做的是使用importdata来提取页面上的所有内容,然后使用split和transpose函数,我强制它基于每个嵌套项进行拆分
您可以使用以下公式获取标题:

=unique(arrayformula(regexreplace(transpose(split(IMPORTDATA(A1),"><",false)),">.*|\/","")))
=unique(数组格式(regexreplace)(转置(split(IMPORTDATA(A1),“>.\/”,”))

基本上,我所做的是,使用importdata提取页面上的所有内容,然后使用拆分和转置功能,我强制它根据每个嵌套项目进行拆分
>您可以共享示例url,以便我可以在发布前快速测试吗?您应该能够只放置“//item/name”但有时会有一些细微差别,我会使用“//dailyBoxOffice”提取数据但是我想把每一列的名字都拉出来,有很多要一个一个地复制/粘贴。谢谢你的评论!你是说像dailyBoxOffice下面嵌套的标题吗?这样你就可以选择特定的列了吗?你能分享示例url吗?这样我可以在发布前快速测试吗?你应该可以只放置“//item/name”但有时会有一些细微差别,我会使用“//dailyBoxOffice”提取数据但是我想拉取每一列的名称,这是一个接一个的复制/粘贴。谢谢你的评论!你是说像dailyBoxOffice下嵌套的标题吗?这样你就可以选择特定的列了?我的导入数据有一些逗号,它们不是分隔符。这会打断
IMPORTDATA
。有办法吗要使用
IMPORTDATA
对我的数据实现与上述解决方案相同的效果,例如使用
SUBSTITUTE
REGEXREPLACE
或其他函数替换逗号?@Catalyx是-我建议您使用
=concatenate(IMPORTDATA(您的url))包装导入函数
将所有数据合并到一个单元格中。或者如果您确实希望替换逗号
regexreplace(数据,“[,]”,“,”)
My import data中有一些逗号不是分隔符。这会中断
IMPORTDATA
。是否有办法使用
IMPORTDATA
对我的数据实现与上述解决方案相同的功能,例如使用
SUBSTITUTE
REGEXREPLACE
或其他函数替换逗号?@Catalyx是-我建议请使用
=concatenate(importdata(您的url))
包装导入函数,将其合并到一个单元格中。或者如果您确实希望替换逗号
regexreplace(data,“[,]”,“)