Die Funktionen, die Perl für das Suchen und Ersetzen innerhalb von Strings bereitstellt, lassen sich auch hervorragend dazu verwenden, Bytefolgen innerhalb von Binärdaten zu bearbeiten.
Mittels der pack-Funktion wird die zu suchende Bytefolge in einer Variable gespeichert
$source = pack("C*", 0x00, 0x40, 0x06, 0x00, 0x00, 0xB0, 0x04, 0x00);
Deren Position innerhalb der zu durchsuchenden Daten kann durch die Funktion index ermittelt
$pos = index($data, $source);
und ggf. auch mit einer Ziel-Bytefolge mit Hilfe der Funktion subst ersetzt werden
substr($data, $pos, length($dest), $dest);