根据模式将二进制文件切成python中的多个文件

问题描述 投票:0回答:1

我有一个二进制文件。它有多行,但是由于文件是二进制文件,所以我不能做readlines,有时换行符是\ r,\ n,\ r \ n。该文件看起来像这样

orange binarydata
binary data
binary data
orange binarydata
binary data

因此,我尝试编写正则表达式,但是它无法捕获最后一个橙色。我需要捕获从橙色到下一个橙色或文件末尾的所有内容。

f = open("data.ir", "rb")
allSignal = f.read()
signalList = re.findall(b'(orange .*?)(orange)+', allSignal, re.DOTALL)

for line in (signalList):
    print(line[0])

但是无法捕获到文件末尾的最后一个橙色。让我知道如何解决。

regex python-3.x binaryfiles
1个回答
0
投票

您可以尝试这种方法:

 orange(.*?)(?=orange)|orange(.*)

Regex101 Sample

© www.soinside.com 2019 - 2024. All rights reserved.