You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Jsoup Scala解析HTML表格:提取卡组名称Jund的问题

用Jsoup提取HTML表格中的卡组名称“Jund”解决方案

我来帮你搞定这个问题!你已经成功定位到class为table_deck的目标表格,接下来只需要从表头的文本内容里精准提取出“Jund”就可以了,具体步骤和代码示例如下:

步骤说明

  1. 定位目标表头元素:卡组名称在表格第一行的第一个<th>标签里,这个标签带有colspan="2"属性,我们可以通过Jsoup的选择器快速定位到它。
  2. 获取表头文本:拿到该<th>的完整文本内容(也就是Reid Duke playing Jund)。
  3. 提取卡组名:利用字符串分割或者正则表达式,从完整文本中分离出“Jund”。

代码示例

假设你已经通过doc.selectFirst(".table_deck")获取到了目标表格元素,接下来的代码可以这样写:

// 1. 获取目标表头元素
Element headerTh = table.selectFirst("tbody > tr:first-child > th:first-child");
// 2. 获取表头的完整文本
String headerContent = headerTh.text();

// 方法一:使用字符串分割提取(适合固定格式的文本)
String deckName = headerContent.split("playing ")[1].trim();

// 方法二:使用正则表达式提取(更灵活,适配文本格式小变化)
Pattern deckPattern = Pattern.compile("playing\\s+(\\w+)");
Matcher matcher = deckPattern.matcher(headerContent);
if (matcher.find()) {
    deckName = matcher.group(1);
}

// 输出结果
System.out.println(deckName); // 会打印出Jund

小提示

  • 如果表头文本的格式偶尔会有变化(比如多了空格、大小写不同),正则表达式的方式会更可靠;如果格式完全固定,字符串分割的写法更简洁。
  • 记得在代码里做一下空值判断,避免因为元素不存在导致空指针异常哦~

内容的提问来源于stack exchange,提问作者Praful Patel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:42:38