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

如何从指定HTML代码片段中提取字符串2,277?

如何从指定HTML片段中提取字符串2,277?

首先先明确你的目标HTML片段:

Overall </a></td> <td align="right">14</td> <td align="right">2,277</td> <td align="right">2,619,106,616</td>

下面给你几个不同场景下的解决方案,从简单到健壮:

1. 字符串分割(适合结构完全固定的简单场景)

如果这段HTML的格式永远不会变,直接用字符串分割就能快速拿到目标:

html = 'Overall </a></td> <td align="right">14</td> <td align="right">2,277</td> <td align="right">2,619,106,616</td>'
# 按固定分隔符分割后,取对应位置的内容再截断
split_parts = html.split('</td> <td align="right">')
target_str = split_parts[2].split('</td>')[0]
print(target_str)  # 输出: 2,277

⚠️ 缺点:只要HTML结构有一点变动(比如多了个空格、属性顺序调整),这个方法就会失效。

2. 正则表达式(灵活性稍高的轻量方案)

用正则匹配所有符合<td align="right">内容</td>的片段,然后取第二个结果:

import re
html = 'Overall </a></td> <td align="right">14</td> <td align="right">2,277</td> <td align="right">2,619,106,616</td>'
# 非贪婪匹配<td>标签内的文本内容
matches = re.findall(r'<td align="right">(.*?)</td>', html)
target_str = matches[1]  # 列表索引从0开始,第二个元素就是目标
print(target_str)

⚠️ 注意:正则不是处理HTML的最优解,遇到嵌套标签或复杂结构容易出错,但对付这种简单片段完全够用。

3. HTML解析库(最健壮的生产环境方案)

如果是在实际项目中,强烈推荐用专业的HTML解析工具,比如Python的BeautifulSoup,它能正确处理HTML的各种结构变化:

from bs4 import BeautifulSoup
html = 'Overall </a></td> <td align="right">14</td> <td align="right">2,277</td> <td align="right">2,619,106,616</td>'
soup = BeautifulSoup(html, 'html.parser')
# 找到所有align属性为right的<td>标签,取第二个的文本
target_td = soup.find_all('td', align="right")[1]
target_str = target_td.get_text()
print(target_str)

这种方法不管HTML里的空格、属性顺序怎么变,都能准确提取内容,是最可靠的选择。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:10:32