in reply to Re^3: map to hash of arrays
in thread map to hash of arrays

That worked perfectly, thanks. So is the regex treating the data read in as a single string? There are line breaks, which I thought would require the /m modifier to get away with something like this. I understand the [^:]+ part that continues matching on anything that is not a :, but I thought the regex would end at the first line break?