It should work with any input unpack() itself normally works with. It's a simple (and inefficient) technique: It appends 'a*' to the end of the unpack string and pops off the last element returned. This will be the remainder of the string. A simple subtraction (length($fullstring) - length($remainder)) will reveal the point at which unpack() stopped unpacking the data the user actually asked for.
in reply to Re: Unpack()ing a stream
in thread Unpack()ing a stream
}"for split/</;$_=$,,y[A-Z a-z]