Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.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
Html 如何去掉XPath中的标记_Html_Xml_Xslt_Xpath_Xquery - Fatal编程技术网

Html 如何去掉XPath中的标记

Html 如何去掉XPath中的标记,html,xml,xslt,xpath,xquery,Html,Xml,Xslt,Xpath,Xquery,我有一堆html文件,其中包含大量数据,我想提取其中的重要部分 这些文件都非常相似;我必须搜索包含某个关键字的。此表行的第三列始终包含我正在搜索的“块”的名称(它是一些表行) 通过这个XPath查询,我得到了名称(可能一个,可能更多) 问题是,如何去除数据周围的标记 现在我的输出是这样的: <span class="log_entry_text">Name1</span><span class="log_entry_text">Name2</span&g

我有一堆html文件,其中包含大量数据,我想提取其中的重要部分

这些文件都非常相似;我必须搜索包含某个关键字的
。此表行的第三列始终包含我正在搜索的“块”的名称(它是一些表行)

通过这个XPath查询,我得到了名称(可能一个,可能更多) 问题是,如何去除数据周围的标记

现在我的输出是这样的:

<span class="log_entry_text">Name1</span><span class="log_entry_text">Name2</span><span class="log_entry_text">Name3</span>
Name1Name2Name3
我想要这样的东西:名字1名字2名字3 所以我可以用它更容易地提取这些块。 使用string()我只能提取第一个元素(结果是:Name1)


谢谢你帮助我

XPath表达式要求检索
span
元素,这就是它返回的内容。如果在输出中看到带尖括号的标记,那是因为接收应用程序处理和呈现XPath结果的方式

如果您使用的是XPath 2.0+或XQuery 1.0+,则可以使用

string-join(//path/span, ' ')

只需用data()元素包装xpath,如data(//body/table/tbody/tr[td=“Deployed to”]/td[3]/div//span[text()])即可检索文本。

thy感谢您的帮助;我接受了您以前的答案://body/table/tbody/tr[td=“Deployed to”]/td[3]/div//span/text(),它对我来说非常有效。
string-join(//path/span, ' ')