Scripting Contest Aufgabe Buchstaben ersetzen
Zur Navigation springen
Zur Suche springen
Scripting Contest Aufgabe Buchstaben ersetzen
Aufgabenbeschreibung
Im Vorlagentext von anbas von http://www.leselupe.de, zu finden als Paste unter 38993 sollen Buchstaben ersetzt werden.
Die Regeln:
- Die Buchstaben werden wie folgt ersetzt:
- A -> 4
- B -> 8
- E -> 3
- G -> 6
- Weiterhin wird im Text in Anführungszeichen "wie z. B. Beispiel hier" keine Ersetzung vorgenommen
Lösungen
Bei den vielen geposteten Lösungen im Forum( ab Beitrag 1053851) gibt es im wesentlichen zwei Ansätze:
- Teile den kompletten Text via Regex in ein Array an den Kommentarzeichen auf und ersetze jedes ungerades Element(Das somit nicht innerhalb von "" liegt).
- Verarbeite den Text zeichenweise und ersetze dabei den Text, sofern der Ersetzungsmodus aktiv ist. Wenn ein " Zeichen auftritt, schalte den Ersetzungsmodus ein oder aus.
Anmerkung zu einzelnen Lösungen
Hier unformatierten Text eingeben
- Bash 38995: Bei der Bash ist es wichtig darauf zu achten, dass nur Bash-Funktionen zum Einsatz kommen und externe Prozesserzeugungen minimiert werden. Sonst braucht das Bash-Script sehr lange.
- Perl 38828 zeigt eine sehr kompakte Lösung mittels Perl-RegEx
- sed / cpp 39002 verwendet ein doch eher faszinierend unerwartetes Tool zur Lösung der Aufgabe
- lex 39001 Auch nicht gerade üblich :)
- Lua 38830 demonstriert die Iteratorenanwendung in Lua, welche dort sehr angenehm zu verwenden ist.