Тут недавно нормальная такая задачка была, с которой даже я не до конца справился.
Есть строка. Нужно найти все возможные комбинации регистра символов.
Например для строки abc:
abc
Abc
aBc
abC
aBC
AbC
ABc
ABC
Функция должна работать корректно при любом количестве символов в строке.