include "NSLog.incl" local fn CommaQuibber( string as CFStringRef ) as CFStringRef CFStringRef tempStr NSUInteger i tempStr = fn StringByReplacingOccurrencesOfString( string, @"[", @"" ) tempStr = fn StringByReplacingOccurrencesOfString( tempStr, @"]", @"" ) tempStr = fn StringByReplacingOccurrencesOfString( tempStr, @" ", @"" ) tempStr = fn StringByReplacingOccurrencesOfString( tempStr, @"\"", @"" ) CFMutableStringRef quibStr = fn MutableStringWithCapacity(0) CFArrayRef arr = fn StringComponentsSeparatedByString( tempStr, @"," ) NSUInteger count = len(arr) select switch ( count ) case 0 : MutableStringSetString( quibStr, @"{}" ) : break case 1 : MutableStringSetString( quibStr, fn StringWithFormat( @"{%@}", arr[0] ) ) : break case 2 : MutableStringSetString( quibStr, fn StringWithFormat( @"{%@ and %@}", arr[0], arr[1] ) ) : break case else MutableStringAppendFormat( quibStr, @"{" ) for i = 0 to count -1 if ( i != count -1 ) MutableStringAppendFormat( quibStr, @"%@, ", arr[i] ) else MutableStringAppendFormat( quibStr, @"and %@}", arr[i] ) end if next end select end fn = quibStr NSLog( @"%@", fn CommaQuibber( @"[]" ) ) NSLog( @"%@", fn CommaQuibber( @"[\"ABC\"]" ) ) NSLog( @"%@", fn CommaQuibber( @"[\"ABC\", \"DEF\"]" ) ) NSLog( @"%@", fn CommaQuibber( @"[\"ABC\", \"DEF\", \"G\", \"H\"]" ) ) HandleEvents