[英]Python extraction of date data from a binary file
我有一個使用二進制格式打開的文件
with open(filename, 'br') as f2
然后,我需要提取十六進制的某些塊。 代碼中將包含許多這些“日期”,如下所示:
F2 96 E6 20 36 1B E4 40
我需要提取此實例的每個實例,以便我完成對它的日期編輯。 每個“日期”將以上述的十六進制字符40結尾。
我已經嘗試過正則表達式,但是這些似乎並沒有按照我的意願工作。
例如
re.findall(b'............\\\x40', filename)
有人可以協助嗎?
我認為您使用十六進制表示法混淆了字節。 0x40
是整數64
的十六進制表示形式,它是符號@
的ascii代碼。
with open(filename, 'rb') as f:
results = re.findall('.{7}@', f.read())
print results
請注意,以下正則表達式是等效的: '.{7}@'
, '.......@'
, '.......\\x40'
>>> print 0x40, hex(64)
64 0x40
>>> print chr(0x40)
@
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.