Vokale Reim: Äpfel und Bananen
Es gibt ein traditionelles Kinderlied, das denselben Text immer wieder wiederholt, nur jedes Mal, wenn jeder Vokal durch einen zufälligen Vokal ersetzt wird, aber über die aktuelle Strophe konstant.
Herausforderung
Das Ziel besteht darin, den kürzesten Code vorzuschlagen, der eine solche Transformation für einen Eingabetext ausführt.
Regeln
- Sie müssen den Reim so oft drucken, wie verschiedene Vokale darin sind.
- Jeder Ausdruck muss durch einen Zeilenumbruch getrennt werden (plattformspezifische Kombination von
\nund\rwird akzeptiert). iErsetzen Sie für die Iteration jeden Vokal durch den jeweils andereniVokal im Originaltext.- Der Eingabetext ist eine Folge druckbarer ASCII - Zeichen (Bereich
[32, 126]. - Die Eingabe enthält keine eingebetteten Zeilenumbrüche.
- Es dürfen nur Vokale betroffen sein, andere müssen genau als Eingabe ausgegeben werden.
- Es zählen nur Vokalzeichen: Nasenvokale, die wie Vokale klingen (wie im französischen "Tim" ), dürfen nicht als ein einziger Vokal behandelt werden.
- Groß- / Kleinschreibung ist für die Ausgabe von Bedeutung, ist jedoch positionsabhängig (das Ersetzen eines Großbuchstabenvokals erfolgt durch den Großbuchstabenersatzvokal)
- Vokale in Großbuchstaben unterscheiden sich nicht von denen in Kleinbuchstaben (dh
a<=>A) - Aufeinanderfolgende Vokale werden immer separat betrachtet (dh
Boatergibt beidesBootundBaat) - Da der Buchstabe
yentweder einen Vokal oder einen Konsonantensound darstellt (wir sprechen Englisch), ist es zulässig, ihn als Vokal oder Konsonanten zu behandeln. In den Antworten muss jedoch ausdrücklich angegeben werden, ob sieyals Vokal behandelt werden oder nicht.
Beispiele:
Hallo Welt
Hello world!
gibt:
Helle werld!
Hollo world!
Auszug aus dem französischen Originaltext (übersetzt) mit yVokalhandhabung:
An elephant that was rambling all gently in the woods...
gibt:
An alaphant that was ramblang all gantla an tha waads...
En elephent thet wes rembleng ell gentle en the weeds...
In iliphint thit wis rimbling ill gintli in thi wiids...
Yn ylyphynt thyt wys rymblyng yll gyntly yn thy wyyds...
On olophont thot wos romblong oll gontlo on tho woods...
Beachten Sie das Verhalten bei Vokalen in Großbuchstaben: Die Groß- und Kleinschreibung wird an ihrem Index festgehalten (Regeln 8 und 9).
Vokalloses Beispiel
Eingabe, die keinen Vokal enthält, wie:
lgn@hst:~$ rm -rf ./* ~ /
darf keine Ausgabe oder einen einzelnen Zeilenumbruch erzeugen.
Einzelvokaleingabe
Eingaben, die einen einzelnen Vokal enthalten, werden unverändert ausgegeben.
Dad sat at a car and saw a fat bat.
gibt:
Dad sat at a car and saw a fat bat.
Dies ist Code-Golf , so dass nur wenige Bytecount-Codes gewinnen (nichts als ewiger PPCG-Ruhm)!