5

如何使用 jSoup 在节点中找到这段 HTML 片段:

<span style="font-weight: bold">Party Date:</span> 14.08.2012<br>

我想从 HTML 片段中提取日期。问题是这个 HTML 片段可以出现在元素中的任何地方,所以我需要使用包含的文本来匹配它。

4

2 回答 2

14

如果您仍在寻找 jsoup 选择器查询.. 这对我有用..

    String html = "<span style=\"font-weight: bold\">Party Date:</span> 14.08.2012<br>";

    System.out.println("Date " + Jsoup.parse(html).select("span:matchesOwn(Party Date:)").first().nextSibling().toString());
于 2012-08-20T20:45:51.457 回答
1

由于您已将问题标记为“xpath”,因此我假设您将接受 XPATH 解决方案。在没有相反信息的情况下,我会做出一些合理的假设。如果您想更正或完善这些假设,请告诉我们。

假设

  1. 正是文档中的一个 span 元素,其文本值为 'Party Date:' 。
  2. “零件日期:”文本与原样完全相同。永远不要使用前导或尾随空格或大小写变化。
  3. 所述跨度之后的文本节点包含目标值。
  4. 所述 span 元素可以出现在文档中的任何位置。
  5. 样式属性对问题无关紧要。

XPath 表达式

以下 XPATH 表达式...

//span[.='Party Date:'][1]/following-sibling::text()

...返回...

' 14.08.2012'

注意:这适用于 XPATH 1.0 和 XPATH 2.0

于 2012-08-15T11:55:37.750 回答