【发布时间】:2021-12-16 19:03:44
【问题描述】:
我想打开一个文本文件,搜索以 45 3F 开头的十六进制模式,获取以下六个十六进制数字,例如 45 4F 5D 并将所有匹配的数字放入一个新文件中。我也知道它总是以 00 00 结尾。
所以,给定一个输入文件,如:
bla bla sdsfsdf 45 3F 08 DF 5D 00 00 dsafasdfsadf 45 3F 07 D3 5F 00 00 xztert
结果应该是:
08 DF 5D 07 D3 5F
我该怎么做?
我试过了:
with open('file.txt') as reader:
my_data = reader.read()
matches = re.findall(r"45 3F ([0-9A-F]{2} [0-9A-F]{2} [0-9A-F]{2})", my_data)
data_to_write = " ".join(matches)
with open('out.txt', 'w') as writer:
writer.write(data_to_write)
但它只打印[]。
【问题讨论】:
-
欢迎来到 Stack Overflow。 “我已经尝试过 [code] 但 [它没有显示任何匹配项]” 那么,您确定文件实际上包含任何匹配的文本吗?你试过debug代码吗? 究竟你对为什么会得到你所做的结果的理解是什么?请注意you are expected to try to do some research and problem-solving before asking.
-
还请注意我对您的问题所做的修改。这不是一个讨论论坛,我们不希望用文本“标记”问题(在实际标记功能之外),或者用问候和签字来装饰。
-
再次回答更新检查!
标签: python file search hex line