Split a character string based on change of character: Difference between revisions

Content added Content deleted
Line 1,209:
<lang>
local fn SplitString( inputStr as CFStringRef ) as CFStringRef
NSUInteger i
CFStringRef resultStr
unichar chr, lastChr = fn StringCharacterAtIndex( inputStr, 0 )
NSUInteger i
CFMutableStringRef resultStr = fn MutableStringWithCapacity(0)
 
if len( inputStr ) < 2 then resultStr = inputStr : exit fn
for resultStri = left0 to len( inputStr, 1 ) - 1
for ichr = 2fn to lenStringCharacterAtIndex( inputStr, i )
if ( chr != lastChr ) then MutableStringAppendString( resultStr, @", " )
if fn StringIsEqual( mid( inputStr, i, 1 ), mid( inputStr, i - 1, 1 ) ) == NO then resultStr = fn StringWithFormat( @"%@, ", resultStr )
resultStr = fn StringWithFormatMutableStringAppendString( @"%@%@", resultStr, mid( inputStr, i, 1 ) )
lastChr = chr
next
i = len( resultStr ) - 2
resultStr = fn StringByReplacingCharactersInRange( resultStr, fn CFRangeMake( i, 1 ), @"" )
end fn = resultStr