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

Python如何用正则为Result code OK后128位独立字符串加方括号

实现方案

你可以通过状态标记+正则匹配的方式实现需求,核心逻辑是先记录上一行是否为Result code OK,再对后续行匹配单独存在的128位连续字符,添加方括号。

完整可运行代码

import re

# 状态标记:记录上一行是否为 Result code OK
last_line_is_ok = False
# 正则规则:匹配整行刚好128位的数字/大写字母组合
target_pattern = re.compile(r'^([0-9A-Z]{128})$')

with open('results.txt', 'r', encoding='utf-8') as in_f, open('processed_results.txt', 'w', encoding='utf-8') as out_f:
    for line in in_f:
        current_raw = line.rstrip('\n')
        if last_line_is_ok:
            # 匹配到目标字符串则替换加括号,否则保留原内容
            line = target_pattern.sub(r'[\1]', line)
            last_line_is_ok = False
        out_f.write(line)
        # 更新状态标记
        if current_raw == 'Result code OK':
            last_line_is_ok = True

规则说明

  • 正则^([0-9A-Z]{128})$中:
    • ^和$分别匹配行首、行尾,确保是整行都是目标字符,不会匹配到包含其他前缀文本的行
    • [0-9A-Z]限定匹配字符为数字和大写字母,和你提供的目标字符串字符范围一致
    • {128}限定字符长度刚好为128位
    • 括号()为捕获组,替换时用\1即可引用捕获到的128位字符串,外层套方括号即可完成修改
  • 状态标记的作用是确保只会修改Result code OK之后紧邻的符合要求的行,避免误改其他位置的同格式字符串

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 13:48:03