XPath 在任何文本节点中查找文本

2024-03-11

我试图在文档中的任何文本节点中查找特定文本,到目前为止我的语句如下所示:

doc.xpath("//text() = 'Alliance Consulting'") do |node|
  ...
end

这显然行不通,有人能建议更好的选择吗?


这个表情//text() = 'Alliance Consulting'评估为布尔值。

对于此测试样本:

<r>
    <t>Alliance Consulting</t>
    <s>
        <p>Test string
            <f>Alliance Consulting</f>
        </p>
    </s>
    <z>
        Alliance Consulting
        <y>
            Other string
        </y>
    </z>
</r>

它会返回true当然。

您需要的表达式应计算为节点集,因此使用:

//text()[. = 'Alliance Consulting']

例如。表达:

count(//text()[normalize-space() = 'Alliance Consulting'])

违反上述文件将被退回3.

选择包含以下内容的文本节点'Alliance Consulting'在整个字符串值中(例如'Alliance Consulting provides great services') use:

//text()[contains(.,'Alliance Consulting')]

请注意adjacent解析器到达文档后,文本节点应变为 1。

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

XPath 在任何文本节点中查找文本 的相关文章

随机推荐

  • Vim 复制行号?

    我通过 SSH 连接使用 vim 我已经设置了数字设置 因此当我尝试用鼠标复制代码部分时 它也会抓取数字 有没有一种复制文本而不抓取数字的好方法 我知道在那个 vim 实例中我可以使用 Y 但我需要一种复制到其他实例和程序的方法 这是我正在
  • OSGI 嵌套依赖 jar

    如果我有一个 OSGI Bundle 其中包含嵌套在 OSGI Bundle jar 中的依赖项 jar 我是否需要在 Import Package 清单中列出这些类以便我可以使用它们 我认为不会 另外 如何将这些依赖项 jar 添加到我的
  • 通过 JDBC 瘦驱动程序连接 Oracle 11g 时出现问题 (Domino Java)

    我无法使用以下代码远程连接 Oracle 11 数据库 但是 如果我尝试连接安装在我的计算机上的 Oracle 9 数据库 相同的代码可以正常工作 缺什么 我没有收到任何错误 Lotus Notes 挂起 import lotus domi
  • 如何使用C++获取文件夹/目录名称,而不是一个文件的路径?特别是 boost::filesystem; [复制]

    这个问题在这里已经有答案了 std string file C folder1 folder2 folder3 txt fs path file path file fs path file dir file path parent pat
  • 成员初始值设定项列表是构造函数的声明或定义的一部分吗?

    请解释如何使用成员初始值设定项列表 我有一个类声明在 h文件和一个 cpp像这样的文件 class Example private int m top const int m size public Example int size int
  • 提高 SQL Server 对大型表的查询性能

    我有一个相对较大的表 当前有 200 万条记录 想知道是否可以提高即席查询的性能 这个单词ad hoc在这里是关键 添加索引不是一个选项 最常查询的列上已经有索引 运行一个简单的查询以返回 100 条最近更新的记录 select top 1
  • 了解 do-while 循环

    我正在做 Oracle 认证助理 Java SE7 程序员练习考试 书本 并遇到一个问题 即使有解释我也不明白答案 这是解释和代码 它将打印 3 循环体执行两次 程序将打印 3 我不明白循环体是如何执行两次的 也许我不明白什么是b b方法
  • JsonPath 与 Newtonsoft.JSON

    我尝试了近一个小时的不同方法 但我不明白 我的 JSON 对象是这样的 typeOfHair value code Dry Hair values value DryHair language en value TrockenesHaar
  • 为什么过滤未排序的列表比过滤排序的列表更快

    我一直在玩 Java 8Streams API我决定进行微基准测试stream and parallelStream 溪流 正如预期的那样parallelStream 速度是原来的两倍 但是会出现其他问题 如果我在将数据传递到之前对数据进行
  • 不使用
    标签是否可以实现类似
    的效果?

    我个人喜欢 fieldset http www w3 org wiki HTML Elements fieldset标签 因为它如何绘制一个盒子并放置 legend http www w3 org wiki HTML Elements le
  • django 中的竞争条件

    下面是一个带有潜在竞争条件的 django 视图的简单示例 myapp views py from django contrib auth models import User from my libs import calculate p
  • 重载方法调用重新设计

    我有一个界面IAction它有一个通用方法 public interface IAction void doAction ISignal sig IState state 另一堂课IActionAbstract然后实现IAction接口并调
  • 如何从 SugarCRM 的表中检索所有记录?

    我正在使用 Sugar Pro 6 1 想知道如何从产品表中检索所有产品及其 id 我正在尝试使用以下代码 sql SELECT id name FROM products order by name result GLOBALS db g
  • 如何让 Spring @ControllerAdvice 与其他自定义 Spring @Aspect 一起工作?

    我有一个自定义记录器使用 Aspect我希望它总是最后运行 这样无论控制器返回什么响应 它都会被记录到数据库中 所以我放了一个 Order 1 在这方面 我还使用编写了一个错误处理程序 ControllerAdvice处理所有意外异常并返回
  • 注意:无法读取...等的 get kotlin 元数据和类型转换器

    添加房间数据库依赖项并使用我的应用程序配置它后 我遇到了几个错误 其中大部分是Failed to read get kotlin metadata for 虽然我在项目中没有使用 kotlin 但第二个错误是关于变量的 TypeConver
  • 如何在 JavaScript 中对 NodeList 进行重新排序/排序?

    我有一个我认为应该是一个简单的问题 让我快速解释一下 在我的 JavaScript 中 food xml读入为 getMenuXml open GET food xml false getMenuXml send xmlDoc getMen
  • npm start 无法打开浏览器选项卡

    我正在学习 AngularJS 2 我想从他们的官方网站上在 AngularJS 2 中进行我的第一个应用程序 所以我从这里开始关注所有内容https angular io guide quickstart https angular io
  • 是否有 Angular / Angular-CLI 和 Node.js 的兼容性列表?

    我定期遇到这个问题 必须使用已弃用的 Angular 依赖项来启动旧的 Angular 项目 因为我通常运行最新的 Node js 版本 至少是最新的 LTS 版本 所以我经常遇到问题 即我无法运行旧项目 我通过使用节点版本管理器解决了这个
  • iTunes Connect 错误:“应用内购买已被退回”

    我看到以下错误iTunes Connect in the in app purchase我的应用程序部分 应用内购买已退回并在表中突出显示 以下 全部in app purchases新应用程序已被拒绝 他们都显示出状态开发者需要采取行动 走
  • XPath 在任何文本节点中查找文本

    我试图在文档中的任何文本节点中查找特定文本 到目前为止我的语句如下所示 doc xpath text Alliance Consulting do node end 这显然行不通 有人能建议更好的选择吗 这个表情 text Alliance