Напишите программу для замены всех вхождений «force» на «first» и всех вхождений «first» на «force», сохраняя исходный регистр для всех позиций символов:
"ForcefoRcefOrcE" -> "FirstfiRstfIrsT"
"FirstfiRstfIrsT" -> "ForcefoRcefOrcE"
Остальная часть строки должна оставаться неизменной, и, следовательно, запуск вашей программы дважды должен вернуть исходную строку:
"thirst of forces" -> "thirst of firsts" -> "thirst of forces"
Ваша программа должна работать с любой начальной строкой. Так что в качестве подсказки лучше избегать использования магических символов в качестве промежуточного представления, потому что, если вы попробуете трехпроходную замену ( "force" -> "zzzzz", "first" -> "force", "zzzzz" -> "first"
), она потерпит неудачу на содержащих строки "zzzzz"
.
Вы должны поддерживать полный диапазон символов, разрешенных в определении String вашим языком программирования (в большинстве случаев это Unicode). Пример использования представления в стиле JSON для непечатаемых символов (\ u + 4 цифры):
"\u0000\u0001\u0002\u0003the Force of the firsT"
|
V
"\u0000\u0001\u0002\u0003the First of the forcE"
[Ff]
, то вы не должны заменить слово.