I do as hixxy suggests.
I look for something that will tell me the next bit is the part I want to save, then I set a vriable.
Then I say, if (%variable) save this bit of the string.
Then I unset the variable. I may have to set a couple diff variables for different parts.
Or I can use $bfind and grab the bits of the string I want and save them as local variables or in a hash table depending on length.