(Hallo|Hi(ho)|Tag) Tom,
Wenn ich mich nicht total irre, dann werden solche Metadaten-Header als Blockheader geschreiben, also mit fester Feldlänge erstellt.
Hmm, ich dachte hier eher an diverse APP-Segmente in J(F)IF-Dateien oder dadrin nochmal das EXIF-Zeugs ...
Bevor man hier mit RegExen beginnt, sollt man vielleicht mal die Dateispezifikation zu Rate ziehen, ob ich richtig liege. Dann braucht man nämlich nur ein substr() und das Wissen über Position und Länge und den Zieltyp für jedes Datenfeld.
PHP hat von Perl auch unpack() geerbt.
Das gibt zwar etwas wunderliche Arrays zurück, gefällt mir aber besser als herum-"peeken" mit substr().
Alternativ könnte man auch mal mehrere Header aus mehreren untereschiedlichen Dateien vergleichen.
Wenn jede Datei die gleichen Meta-Bezeichner liefert.
Gerade beim oben erwähnten JIF und EXIF gibts ja auch optionale Felder.
Ich sag hier nur eins "nicht ohne meinen Hexdump-Editor"
Bei EXIF könntest du als menschlicher Betrachter aber allenfalls noch die Byte-Order ("MM" oder "II") erkennen ...
;-)
MffG
EisFuX