Tutorial
Stringmanipulationen
von Mao | Seite 2 von 5 |
LCase und UCase
Nehmen wir an, der User soll bei einem Quiz etwas eingeben (Multiple-Choice lassen wir hier außer Acht). Lautet die Frage zum Beispiel "Was ist die Hauptstadt Deutschlands?", dann müsste (eigentlich) jeder Deutsche und die meisten anderen auf der Welt klar sagen können, dass dies Berlin ist.
Aber jeder hat nun mal eine andere Art, etwas einzugeben. Einige schreiben durchgängig klein, andere schreiben korrekt mit einem Großbuchstaben und weiteren, folgenden Kleinbuchstaben. Aber auch kann es durchweg passieren, dass die Caps Lock-Taste aktiviert ist. Die Folge wäre, dass alles als Großbuchstaben eingegeben wird.
Eine Möglichkeit der Überprüfung könnte so aussehen:
Dim s As String
Input "Wie heißt die Hauptstadt von Deutschland?", s
If s="Berlin" Then
Print "Richtig!"
Else
Print "Falsch!"
End If
Zugegeben, dieses Spiel ist eintönig und wohl keine wirklich spannende Herausforderung – auch programmiertechnisch sollte es keine sein.
Doch nehmen wir doch mal den Fall der unterschiedlichen Schreibweisen von oben. Was ist, wenn sich der Spieler wegen der Frage langweilt und einfach mal ein bisschen mit der Umstelltaste spielt, statt mit dem Spiel? Er könnte ja zum Beispiel
bErLiN
oder
bErLiN
eingeben. Inhaltlich wäre die Antwort immer noch vollkommen richtig, aber das "Spiel" würde es als "falsch" werten. Und hier kommen die beiden oben genannten Funktionen ins (wortwörtlich) Spiel. LCase ist die Kurzform für LowerCase, UCase die Kurzform für UpperCase. Und genau das machen die Funktionen auch: sie nehmen als Funktionsargument einen String und geben ihn in der Klein- bzw. Großschreibweise zurück.
Das Quiz könnte man also folgendermaßen modifizieren:
Dim s As String
Input "Wie heißt die Hauptstadt von Deutschland?", s
If LCase(s)="berlin" Then
Print "Richtig!"
Else
Print "Falsch!"
End If
Und nun kann man Berlin (fast) so schreiben wie man will, es ist immer richtig. (Vorausgesetzt man schreibt nicht "Bährlin" oder ähnliches. ;)
Man könnte das Beispiel natürlich auch mit:
...
If UCase(s)="BERLIN" Then
...
verwenden, das hängt ganz vom persönlichen Programmierstil ab. Meistens wird jedoch die Kleinschreibweise, also LCase, verwendet.
Zusätzliche Informationen und Funktionen | |||||||
---|---|---|---|---|---|---|---|
|