in reply to Splitting a string in Perl

That looks to be a fixed-width representation. That is better handled using unpack instead.
my ($memAddr, $data, $ascii) = unpack( "A10A20A*", $line );
I guessed at the 10 and 20, but those are the column widths. The * means "and everything else".

Then, you will want to massage in some fashion the various bits. So, something like $data =~ s/\s//g; to remove the whitespaces. Etc.


My criteria for good software:
  1. Does it work?
  2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?