BUT the fact that you are trying to do this suggests that you shouldn't do it at all! clearly you & the originator of the string have different ideas about how the string should be formatted. if you send your new-format string back to the originator, he is going to have the same problem you have now.
why not split the field into three fields, one holding mid$(strOld,4,3), the second holding left$(strOld, 3), and the third holding mid$(strOld,11).
now you can format a string whenever you need it in your or the originator's format with no effort (bonus: you also save 4 bytes/record).