NSString
имеет метод lowercaseString
и uppercaseString
.Вы можете перебирать символы в строке как последовательность подстрок, используя некоторый случайный источник для вызова соответствующего нижнего / верхнего регистра для каждого из них, собирая результат.Что-то вроде ...
NSMutableString result = [NSMutableString string];
for (NSUInteger i = 0; i < [myString length]; i++)
{
NSString *substring = [myString substringWithRange:NSMakeRange(i, 1)];
[result appendString:(rand() % 2) ? [substring lowercaseString]
: [substring uppercaseString]];
}
Вы можете предпочесть источник энтропии лучше, чем rand
, но это подойдет для примера (не забудьте заполнить его, если вы используете этот случай как есть).Если строки большие, вы можете сделать это на месте на NSMutableString
.