Я обрабатываю один двоичный файл, в котором я хочу получить первые 4 байта, следующие 4 байта, снова 4 байта, а затем остальную часть содержимого файла, кроме последних 8 байтов последней строки.
Я пробовал с этой строкой file.read.scan(/(.{4})(.{4})(.{4})(.*\w)(.{8})/).each do |a,b,c,d,e|
, но после некоторых итераций это регулярное выражение начинается с некоторой строки между первыми 4 байтами, следующими 4 байтами, следующими 4 байтами. Из-за этого моя проверка состояния не удалась.
Я хочу сделать следующее.
Прочитайте первые 4 байта первой строки файла, затем байты с 5 по 7, затем байты с 8 по 11, а затем остальную часть содержимого файла, кроме последних 8 байтов последней строки файла.
Что может быть регулярным выражением для этого в Ruby?