【发布时间】:2023-03-04 01:53:01
【问题描述】:
我想从日志中搜索一个子字符串,日志看起来像
log = "blablabla targets:['123-321', '123-456'] blablabla"
这是我的代码 sn-p
node_ids = ['123-456', '123-321']
node_ids = re.escape(str(node_ids))
expected_result = f"targets:{node_ids}"
print(re.findall(expected_result, log))
输出
[]
虽然我有node_ids 中的所有ID,但由于ID 的顺序与日志不匹配,代码没有返回任何内容。无论如何,我可以让正则表达式 findall 忽略 ID 的顺序?
编辑
匹配条件:node_ids中的所有ID都在log中观察,格式为expected_result
当node_ids = ['123-321', '123-456']
我能够得到输出
["targets:['123-321', '123-456']"]
【问题讨论】:
-
你也要搜索括号吗?
-
匹配的条件是什么?一个匹配是否应该以任一顺序同时具有两个节点 ID,还是一个匹配可以具有任一节点 ID?
-
我的问题不够清楚,添加了匹配条件
标签: python python-3.x regex