使用 Hpricot 查找节点在其父节点内的字符索引

发布于 2024-08-03 13:26:49 字数 442 浏览 7 评论 0原文

假设我有以下 HTML:

html = Four score and seven <b>years ago</b>

我想用 Hpricot 解析它:

doc = Hpricot(html)

找到 节点:

node = doc.at('b')

然后获取 节点的字符索引在其父级中:

node.character_index
=> 22

我该如何做到这一点(即我刚刚编写的 character_index() 函数的真实版本是什么)?

Suppose I have the following HTML:

html = Four score and seven <b>years ago</b>

I want to parse this with Hpricot:

doc = Hpricot(html)

Find the <b> node:

node = doc.at('b')

and then get the character index of the <b> node within its parent:

node.character_index
=> 22

How can I do this (i.e., what's the real version of the character_index() function I just made up)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

美煞众生 2024-08-10 13:26:49

我不认为 Hpricot 是这样工作的。这是我根据您的示例执行“node.inspect”的结果

node.inspect
"{elem <b> \"years\" </b>}"

因此,您要求的整个文本中的位置不存在。

但是,您可能希望使用索引执行的操作数量有限,您可以通过 来完成这些操作标准 Hpricot 方法

I don't think Hpricot works like that. Here is what I get doing a "node.inspect" based on your example

node.inspect
"{elem <b> \"years\" </b>}"

So, the position in the overall text that you are asking for just isn't there.

However, there are limited number of things you'd probably like to use the index for and you may be able to do these through the standard Hpricot methods

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文