Die Rechtschreibreform - ein satirisches Programm.

Strings und Stringteile kann man in Java problemlos entfernen, tauschen, etc.....

Die Unzulänglichkeiten der neuen Rechtschreibreform lassen sich so durch ein recht einfaches Java-Programm leicht aufheben. Hierzu sind lediglich einige String-Ersetzungen notwendig. Im Einzelnen sind dies:

public class Rechtschreibreform {

    public static String[] ein = new String[] {
    // Stufe 1, v und ph ersetzt durch f, z ersetzt durch s, sch verkürzt auf s
            "v", "ph", "z", "sch",
            // Stufe 2, g, ch und c ersetzt durch k
            "g", "ch", "c",
            // Stufe 3, Wegfall der Dehnungen und Schärfungen
            "ß", "ie", "nn", "pp", "tt",
            // Stufe 4, überflüssige h streichen
            "h",
            // Stufe 5, j und y ersetzt durch i
            "j", "y",
            // Stufe 6, Wegfall der Umlaute
            "ä", "ö", "ü" };

    public static String[] aus = new String[] { "f", "f", "s", "s", "k", "k", "k", "s", "i", "n", "p", "t", "", "i",
            "i", "a", "o", "u" };

    private static String ersetze(String eingabe, int min, int max) {
        // Wegfall der Großschreibung
        eingabe = eingabe.toLowerCase();

        for(int i=0; i<ein.length; i++){
            System.out.println("Tausch: " + ein[i] + " -> " + aus[i]);
            eingabe = eingabe.replaceAll(ein[i],aus[i]);
        }
        return eingabe;
    }

    public static void main(String[] args) {
        System.out.println(ersetze("Oh wie schön, daß die deutsche Sprache einfacher und vielfältiger wird!", 0, ein.length));

    }

}

Zunächst werden zwei Arrays deklariert1, eines für die zu ersetzenden Zeichen (String[] ein), eines für die Ersatzzeichen (String[] aus). Jede Position im ersten Array entspricht derjenigen im zweiten. Die Arrays müssen also gleich groß sein.
Die Hauptmethode enthält in ihrer Signatur die Parameter für den zu wandelnden String, die Position, an der der Wandel beginnen (Beginn) und die Position, an der der Wandel beendet (Ende) werden soll.
In einer Schleife wird das Array der zu tauschenden Elemente durchlaufen und ein gefundenes Element gegen ein Ersatzelement getauscht. Dies bewerkstelligt die Methode replaceAll(). Ihr werden als Parameter der zu tauschende und der Ersatzstring übergeben.

Die Ausgabe erscheint dann wie folgt:

Tausch: v -> f
Tausch: ph -> f
Tausch: z -> s
Tausch: sch -> s
Tausch: g -> k
Tausch: ch -> k
Tausch: c -> k
Tausch: ß -> s
Tausch: ie -> i
Tausch: nn -> n
Tausch: pp -> p
Tausch: tt -> t
Tausch: h -> 
Tausch: j -> i
Tausch: y -> i
Tausch: ä -> a
Tausch: ö -> o
Tausch: ü -> u
o wi son, das di deutse sprake einfaker und filfaltiker wird!

1) Man beachte die Formatierung des Arrays ein[]. Es ist in Java kein Problem, einen Zeilenumbruch und selbst einen Kommentar in einen beliebigen Quelltextabschnitt zu setzen.

Wenn Ihnen javabeginners.de gefällt, freue ich mich über eine Spende an diese gemeinnützigen Organisationen.