使用 XPath 提取标签之间的文本(包括标记)

2024-01-27

我有以下 XML 片段:

...<span class="st">In Tim <em>Power</em>: Politieman...</span>...

我想提取之间的部分<span>标签。 为此,我使用 XPath:

   /span[@class="st"]

然而,这将提取所有内容,包括<span>. and.

  /span[@class="st"]/text()

将返回两个文本元素的列表。其中一首包含“In Tim”。另一个“:政治家”。这<em>..</em>不包括在内,并且像分隔符一样处理。

是否有一个纯 XPath 解决方案返回:

In Tim <em>Power</em>: Politieman...

EDIT感谢@helderdarocha 和@TextGeek。使用仅包含以下内容的 XPath 提取纯文本似乎并不简单<em>.

/span[@class="st"]/node() 解决方案创建一个包含各个行的列表,在 Python 中创建一个字符串很简单。


To get any您可以使用子节点:

/span[@class="st"]/node()

这将返回:

  1. 两个子文本节点
  2. 完整的<em>节点(元素和内容)。

如果你真的想要所有text()节点,包括里面的节点em,然后得到所有的text()后人:

/span[@class="st"]//text()

or

/span[@class="st"]/descendant::text()

这将返回三个文本节点,文本inside <em>,但不是<em>元素。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 XPath 提取标签之间的文本(包括标记) 的相关文章

随机推荐

  • Java 中连续“if”语句的简化[重复]

    这个问题在这里已经有答案了 我有一系列if语句 如下图 if board x 1 y true ar 1 if board x y 1 true ar 1 if board x 1 y true ar 1 if board x y 1 tr
  • OpenCV - 如何在拼接图像的对应点之间进行映射

    我正在使用 OpenCV 3 2 并且设置了一个缝合器来缝合两个图像 缝合效果很好 但是一旦完成 我希望能够确定从图像 A 中的点到图像 B 中对应点的映射 我不关心图像在全景图中的布局方式 我只需要能够从 x A y A 图像 A 中的点
  • 从 power bi 公共嵌入中删除共享栏

    我有一份关于 power bi 的报告 已发布在网络上 我将在我的计算机上创建一个本地页面 以通过嵌入代码查看它 并在 Dropbox 上与其他人共享 我想删除带有社交媒体链接的按钮栏以防止共享 我还可以阻止显示 iframe 源链接吗 也
  • for 循环中的隐式内存别名

    我正在使用 golangci lint 并且在以下代码中收到错误 versions ObjectDescription populate versions for i v range versions res createWorkerFor
  • 如何在 postgresql 中创建 n-gram

    我希望在我的应用程序中具有搜索功能 我使用 trigram 来实现它 并且工作正常 问题是 trigram 正在创建单词的 3 个字符组的序列 我想要在单个对象中包含超过 3 个字符 例如 select show trgm abcpqrs
  • HTTP 缓存控制 max-age,必须重新验证

    我有几个与缓存控制相关的疑问 如果我指定缓存控制max age 3600 must revalidate对于静态 html js images css 文件 在 HTTP 标头中定义了 Last Modified 标头 浏览器 代理缓存 如
  • 从 Windows 服务启动 Windows 应用程序

    我正在尝试使用以下代码从 Windows 服务启动 Windows 应用程序 Process Start filename exe 在 Windows 7 中 我收到一个弹出窗口 显示 此计算机上运行的程序正在尝试显示一条消息 您无法从 W
  • Python subprocess.popen() 无需等待

    我在 Windows 上使用 Python 3 4 2 在 script1 py 中我正在这样做 myProc subprocess Popen sys executable script2 py argument myProc commu
  • iPhone 上奇怪的应用程序崩溃 - 没有被 Apple 拒绝

    我最近通过 iTunes Connect 向 Apple 提交了我的应用程序 它现在已在 iTunes 商店中 然而 当我把它下载到朋友的 iPhone 上时 它立即崩溃了 我在 iPhone 模拟器和 iPad 上进行了测试 我没有 iP
  • 可编辑数据表 RowKey Null

    我有一个可编辑的 Primefaces 数据表 配置为在编辑单元格时调用 onCellEdit 方法 一切工作都很好 除了 CellEditEvent rowKey 始终为 null 尽管在数据表声明中使用 rowKey 将其显式设置为有效
  • 在 Windows 上,如何检测文件的行结尾?

    我已经看到了这些问题的答案 但据我所知 这些答案并不是从 Windows 角度来看的 Windows 使用 CR LF Unix 使用 LF Mac 使用 LF 经典 mac 使用其他内容 我没有足够的智慧来告诉我 如果一个文件使用的行尾与
  • 如何使浏览器后退按钮忽略主题标签?

    我有一个网站 它使用哈希来打开 关闭当前页面上的一些选项卡和图层 使用哈希值的原因是 如果用户通过链接访问另一个页面 然后返回原始页面 则所有选项卡和图层的打开方式都应与离开该页面时完全相同 问题是 在第一页上并使用浏览器后退按钮时 只有哈
  • Bower:ENOGIT Git 未安装或不在 PATH 中

    Git 已安装并位于路径中 平台 红帽企业 Linux en wikipedia org wiki Red Hat Enterprise Linux 5 8 gt which git usr local bin git 然而 Bower 找
  • 基于窗口调整大小的 jQuery 位置元素

    如果您查看此页面 http dev driz co uk tips http dev driz co uk tips 我正在做一些实验来更多地了解 jQuery 以及如何开发类似于我们在 Facebook 上看到的东西 您将看到我有一个相对
  • Tensorflow.compat.v2.__internal__.tracking'没有属性'TrackableSaver'错误

    安装 Tensorflow js 后出现此错误 以前这个程序是有效的 会不会是版本的问题 我真的很好奇是什么原因造成的 提前致谢 File OneDrive Masa st Bitirme Proje neural network sini
  • Android - Google Map API v2 - 不幸的是,应用程序已停止。每次强制关闭

    大家好 我在这里找到了关于使用 Google Map API 时强制关闭 Android 中的应用程序的类似主题 我几乎尝试了所有方法 一步一步按照教程进行操作并检查了两次以上 每次出现问题并且我的应用程序都会立即崩溃 我什至无法运行 Go
  • Bootstrap-select插件:如何避免闪烁

    Bootstrap select 插件非常棒 http silviomoreto github io bootstrap select http silviomoreto github io bootstrap select 它提供了一种在
  • Ruby on Rails、Paperclip、Heroku、GitHub 和 AWS - 保护密钥

    我正在使用 Heroku 托管的 RoR 我想使用回形针将文件存储在 s3 上 我的源代码托管在 github 上 全世界都可读 对世界其他地方保密密钥的最佳做法是什么 Paperclip 建议将访问密钥存储在配置文件 或代码 中 例如我有
  • 使用单链表,如何在python中交换节点?

    目前 我一直在尝试根据我的主功能开关 myList index 重新排列链表 def createList plist linkedList None goes backwards adding each element to the be
  • 使用 XPath 提取标签之间的文本(包括标记)

    我有以下 XML 片段 span class st In Tim em Power em Politieman span 我想提取之间的部分 span 标签 为此 我使用 XPath span class st 然而 这将提取所有内容 包括