That's a very nice and a unintended use of mattrib. Unfortunately my application has lower case letters as well otherwise I would use it. The character data that I want to convert comes in blocks of letters without delimiters and I find that I need to chop the blocks into individual characters as you have done with my name above. There is no need to loop over each character in the string, as I have found that I can do this as follows: start chop(s); call execute( cat( 'chopstr = {', prxchange( "s/(.)/'$1' /", -1, s), '};') ); return(chopstr); finish; str=chop('IanWakeling'); print str; By the way, it is not possible to use a call execute to return from a function module - I tried!
... View more