Napisz program, który zastąpi wszystkie wystąpienia słowa „force” słowem „first”, a wszystkie wystąpienia słowa „first” słowem „force”, zachowując oryginalny przypadek dla wszystkich pozycji znaków:
"ForcefoRcefOrcE" -> "FirstfiRstfIrsT"
"FirstfiRstfIrsT" -> "ForcefoRcefOrcE"
Reszta ciągu musi pozostać niezmieniona, więc dwukrotne uruchomienie programu zwróci oryginalny ciąg:
"thirst of forces" -> "thirst of firsts" -> "thirst of forces"
Twój program powinien działać na dowolnym ciągu początkowym. Tak więc, jako wskazówkę, lepiej unikać używania znaków magicznych jako reprezentacji pośredniej, ponieważ jeśli spróbujesz zastąpienia trzyprzebiegowego ( "force" -> "zzzzz", "first" -> "force", "zzzzz" -> "first"), to zawiedzie na łańcuchach zawierających "zzzzz".
Powinieneś obsługiwać pełny zakres znaków dozwolony w definicji ciągu znaków przez swój język programowania (w większości przypadków jest to Unicode). Przykład z użyciem reprezentacji w stylu JSON dla znaków niedrukowalnych (\ u + 4 cyfry):
"\u0000\u0001\u0002\u0003the Force of the firsT"
|
V
"\u0000\u0001\u0002\u0003the First of the forcE"
[Ff]nie ma prowadzącego, nie wolno zastępować słowa.