开发者社区 问答 正文

JSOUP-查找以以下内容开头的元素

我有以下HTML:

<data-my-tag>
  <data-another-tag>
    <p>...</p>
    <data-my-tag>
      <span>...</span>
    </data-my-tag>
  </data-another-tag>
</data-my-tag>

我使用JSOUP解析它,我想匹配所有以开头的元素<data-。

我只找到了匹配getElementsByTag整个标签名称匹配的方法。select方法也仅执行css选择器,但是似乎没有办法以data-*JSOUP方式进行匹配(例如,使用XPath)。是否可以通过JSOUP匹配这些标签。

问题来源:Stack Overflow

展开
收起
montos 2020-03-27 16:10:18 503 分享 版权
1 条回答
写回答
取消 提交回答
  • 不幸的是,不可能在JSOUP中使用XPath查询。我发现的唯一方法是:

    Document doc = Jsoup.parse(content);
    Elements elements = doc.select("*");
    
    elements.stream().filter(e -> e.nodeName().startsWith("data-")).forEach(e -> {
        // do what you need with the node
    });
    

    回答来源:Stack Overflow

    2020-03-27 16:10:36
    赞同 展开评论
问答分类:
问答地址: