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

如何在Python中提取文本文件内重复的RequestId键及其对应值?

提取文本中的RequestId方法

嘿,这有两种实用的Python方法帮你提取并打印文本里的RequestId:

方法一:字符串分割遍历

这种方法适合结构比较规整的文本,思路就是把文本拆成一个个片段,然后筛选出带RequestId的项:

# 定义你的文本内容
log_text = "RequestId=159dd0dc-3ac2-11e7-9f57-b7548c7a91e2 global-action-trace=15a01af3-3ac2-11e7-babe-0a5b00b90000 EOE RequestId=12780045-3ac2-11e7-8dc6-f7c2b766d8e7 global-action-trace=1278c342-3ac2-11e7-babe-0a5b00b90000 EOE"

# 按空格拆分文本成单个键值对片段
items = log_text.split()

# 遍历每个片段,提取RequestId
for item in items:
    if item.startswith("RequestId="):
        # 拆分键和值,取后面的部分
        request_id = item.split("=")[1]
        print(f"RequestId: {request_id}")

运行这段代码会输出:

RequestId: 159dd0dc-3ac2-11e7-9f57-b7548c7a91e2
RequestId: 12780045-3ac2-11e7-8dc6-f7c2b766d8e7

方法二:正则表达式(更灵活)

如果文本结构可能有变化,用正则表达式匹配UUID格式的RequestId会更靠谱,能精准定位:

import re

log_text = "RequestId=159dd0dc-3ac2-11e7-9f57-b7548c7a91e2 global-action-trace=15a01af3-3ac2-11e7-babe-0a5b00b90000 EOE RequestId=12780045-3ac2-11e7-8dc6-f7c2b766d8e7 global-action-trace=1278c342-3ac2-11e7-babe-0a5b00b90000 EOE"

# 匹配RequestId=后面的UUID(8-4-4-4-12格式的字符串)
pattern = r"RequestId=([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})"
request_ids = re.findall(pattern, log_text)

# 打印所有提取到的RequestId
for rid in request_ids:
    print(f"RequestId: {rid}")

这个方法的好处是,哪怕RequestId前后有其他特殊字符,只要格式符合UUID,都能准确提取出来,输出结果和上面一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 06:38:48