void local fn StringHasUniqueCharacters( string as CFStringRef ) long i, j, length = len( string ) if length == 0 then printf @"The string \"\" is empty and thus has no characters to compare.\n" : exit fn printf @"The string: \"%@\" has %ld characters.", string, length for i = 0 to length - 1 for j = i + 1 to length - 1 if ( fn StringIsEqual( mid( string, i, 1 ), mid( string, j, 1 ) ) ) CFStringRef duplicate = mid( string, i, 1 ) printf @"The first duplicate character, \"%@\", is found at positions %ld and %ld.", duplicate, i, j printf @"The hex value of \"%@\" is: 0X%x\n", duplicate, fn StringCharacterAtIndex( duplicate, 0 ) exit fn end if next next printf @"All characters in string are unique.\n" end fn fn StringHasUniqueCharacters( @"" ) fn StringHasUniqueCharacters( @"." ) fn StringHasUniqueCharacters( @"abcABC" ) fn StringHasUniqueCharacters( @"XYZ ZYX" ) fn StringHasUniqueCharacters( @"1234567890ABCDEFGHIJKLMN0PQRSTUVWXYZ" ) HandleEvents