Xpath 将正文中的文本作为一个单元格中的字符串获取

Xpath 将正文中的文本作为一个单元格中的字符串获取,xpath,google-sheets,spreadsheet,Xpath,Google Sheets,Spreadsheet,我试图通过IMPORTXML获取页面上作为一个单元格中的字符串的所有文本 例如,当打开以下内容时,我希望获得body标记中的所有内容 我尝试了以下方法:=transpose(IMPORTXML(A3,“/html/body/text()”) 下面是我的示例电子表格,包含5个URL: 我的问题是我没有得到任何结果 有什么建议我做错了什么吗?这似乎有效: =ArrayFormula( CONCATENATE(IMPORThtml(A3,"table",2) & CHAR(10) ) )

我试图通过
IMPORTXML
获取页面上作为一个单元格中的字符串的所有文本

例如,当打开以下内容时,我希望获得body标记中的所有内容

我尝试了以下方法:
=transpose(IMPORTXML(A3,“/html/body/text()”)

下面是我的示例电子表格,包含5个URL:

我的问题是我没有得到任何结果

有什么建议我做错了什么吗?

这似乎有效:

=ArrayFormula( CONCATENATE(IMPORThtml(A3,"table",2) & CHAR(10) ) )
这似乎有效:

=ArrayFormula( CONCATENATE(IMPORThtml(A3,"table",2) & CHAR(10) ) )

有3种非常简单的方法可以做到这一点(技术上更多,但我们不会得意忘形),变化的唯一区别在于它们最终的格式:

1-如果要保留完整格式,或有类似的换行符,可以将函数包装在
JOIN
中,并使用
CHAR(10)
作为分隔符,这相当于硬回车或新行:

=join(char(10),IMPORTXML(A3,"//body"))
=join(" ",IMPORTXML(A3,"//body"))

2-您可以执行相同的功能,但只能使用空格而不是完整的新行进行连接:

=join(char(10),IMPORTXML(A3,"//body"))
=join(" ",IMPORTXML(A3,"//body"))

3-或者,如果目标实际上只是使用尽可能少的额外空格和新行来保存数据,则可以使用CONTANCATE和REGEXPREPLACE来替换现有新行:

=REGEXREPLACE(CONCATENATE(IMPORTXML(A3,"//body")),"\n","")

有3种非常简单的方法可以做到这一点(技术上更多,但我们不会得意忘形),唯一不同的是它们最终的格式:

1-如果要保留完整格式,或有类似的换行符,可以将函数包装在
JOIN
中,并使用
CHAR(10)
作为分隔符,这相当于硬回车或新行:

=join(char(10),IMPORTXML(A3,"//body"))
=join(" ",IMPORTXML(A3,"//body"))

2-您可以执行相同的功能,但只能使用空格而不是完整的新行进行连接:

=join(char(10),IMPORTXML(A3,"//body"))
=join(" ",IMPORTXML(A3,"//body"))

3-或者,如果目标实际上只是使用尽可能少的额外空格和新行来保存数据,则可以使用CONTANCATE和REGEXPREPLACE来替换现有新行:

=REGEXREPLACE(CONCATENATE(IMPORTXML(A3,"//body")),"\n","")