У меня есть двоичный файл. Из этого файла мне нужно извлечь несколько фрагментов данных, используя регулярное выражение python.Python Regular Expression Extract Chunk of Data from Binary File
Мне нужно извлечь ненулевые символы, установленные между наборами нулевых символов.
Например это основной набор символов:
\ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ XFF \ XFE \ XFE \ x00 \ x00 \ x23 \ x41 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x41 \ x49 \ x57 \ x00 \ x00 \ x00 \ x00 \ x32 \ x41 \ x49 \ x57 \ x00 \ x00 \ x00 \ x00 \ x32 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x56 \ x65 \ x00 \ x35 \ x56
регулярное выражение должно экстракт ниже набора символов из вышеуказанного основного набора:
\ xff \ xfe \ xfe \ x00 \ x00 \ x23 \ x41, \ x41 \ x49 \ x57 \ x00 \ x00 \ x00 \ x00 \ x32 \ x41 \ x49 \ x57 \ x00 \ x00 \ x00 \ x00 \ x32 и \ x56 \ x65 \ x00 \ x35 \ x56
важно одно, если он получает более 5 нулевых байтов непрерывно, то только он должен рассматривать эти нулевые символы, выбранные в качестве separator..otherwise он должен включать этот нуль байты в символ no-null. Как вы можете видеть в данном примере, в выделенном наборе символов присутствуют несколько нулевых символов.
Если это не имеет никакого смысла, пожалуйста, сообщите мне, я постараюсь объяснить это наилучшим образом.
Спасибо заранее,
Вы уверены, что вы будете хотеть использовать регулярные выражения для этого? – msvalkon
Почему бы просто не разбить на '\ 000 {5,}'? – sln
@msvalkon любой другой лучший/эффективный вариант? –