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

如何将这段重复调用replace的Python文本处理代码简化得更短更整洁?

代码优化思路
  • 将无变量、无先后依赖的固定字符串替换规则统一整理为映射列表,遍历执行即可,无需重复写replace方法
  • 保留原有执行顺序,特殊的正则替换、带动态变量的替换、有先后依赖的替换单独拆分,确保和原代码输出结果完全一致
  • 后续新增替换规则只需往对应位置添加即可,维护更方便
优化后代码
import re

# 固定字符串替换映射,顺序和原逻辑保持一致
replace_map = [
    ('<div dir="ltr">', '<p>'),
    ('<h4 dir="ltr">', '<h4>'),
    ('<h3 dir="ltr">', '<h3>'),
    ('<div>', '<p>'),
    ('</div>', '</p>'),
    ('target="_blank" ', ''),
    (' ', ''),
    ('rel="noopener noreferrer" ', '')
]

# 1. 执行正则清理
data = re.sub(r' data-saferedirecturl="http\S+"', '', data)

# 2. 批量执行固定字符串替换
for old_val, new_val in replace_map:
    data = data.replace(old_val, new_val)

# 3. 执行特殊动态/顺序敏感替换
data = data.replace('href', f'title="{zoekwoord}, " href')
data = data.replace(f'{domein}', '')
data = data.replace('<p></p>', '')
data = data.replace('href="https://', 'target="_blank" href="https://')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 06:48:03