Dreistein

 


* Startseite     * Über...     * Archiv     * Gästebuch     * Kontakt



* Themen
     Willkommen
     Allgemeines
     * Variablen
     * Function
     * Procedure
     * String
     * Array
     FormObjekte
     * Button
     * CheckBox
     * Editfeld
     * Label
     * Listbox
     * RadioButton
     * Timer
     * Turtle
     Sortieralgorithmen
     * Arraysort
     * Bubblesort
     * Selection Sort
     * Quicksort
     Schleifen
     * repeat-Schleife
     * while-Schleife
     * for-Schleife
     Rekursion
     * Ackermann
     * Binominalkoeffizent
     * Fibonacci Zahlen
     * Fakultät
     * GGT
     * Kochfunktion
     * Sierpinskifunktion
     Nützliches
     * Hintergrundbild
     * Massenanzeige
     * Massenbenutzung
     * Schreibtischtest






* String

Pos

Ein weiterer n?tzlicher Befehl ist pos. Mit ihm kann man nach bestimmten Zeichen oder Ketten in einem String suchen. Dabei gibt pos das Ergebnis in einem Integer aus. Besonderheit ist, das nur das erste Zeichen gefunden wird. Wenn man ein e finden will und das Wort hat mehrere, dann sagt er nur die Position des ersten. Die Syntax lautet wie folgt:

pos(Substring,String)

14.11.05 16:43


Verknüpfung

Hiermit m?chte ich nur nochmal kurz die einzelnen M?glichkeiten zur Bearbeitung des Strings anzeigen.

Da ein String nichts anderes als eine Zeichenkette ist, kann man beliebig Zeichen dranh?ngen. Dies geschieht mit dem Zeichen +. Dabei ist nur eine Besonderheit zu beachten. M?chte man reine Zeichen anh?ngen, so muss man sie in ' '
schreiben, will man jedoch einen ganzen Sring oder Teile eines String anh?ngen, reicht der Name. Zahlen werden also auch in ' ' eingef?gt, da sie ja nichts anderes als Zeichen sind.

Zum Beispiel

...
var a: String;
begin
a := 'T' + 'e' + 's' + 't';
end;
...

a hat nun den Inhalt Test. Kombinieren wir doch nun mal 2 Strings.

Zum Beispiel
...
var a,b,c: String;
begin
a := 'T' + 'e' + 's' + 't';
b := 'erfolgreich';
c := a + b;
end;
...

In c steht nun Test erfolgreich.
12.11.05 22:29


Copy, Insert und Delete

Mit den drei Befehlen ist es m?glich, l?ngere Teile zu bearbeiten.
Befassen wir uns zuerst mit delete. Sie l?scht einen Teil aus einem String und der Rest f?llt die L?cke. Dabei wird delete so definiert, das man erst den String, dann den Index und zuletzt die Anzahl angibt. Vereinfacht geschrieben sieht das dann so aus:

delete(String, Index, Anzahl)

Dabei ist es einem freigestellt, ob man eine Zahl, den ganzen String oder nur eine bestimmte Stelle l?schen m?chte.

Der Befehl copy funktioniert ?hnlich. Von der Syntax her ist es dasselbe.

copy(String, Index, Anzahl)

copy kopiert halt nur Teile des Strings, die man dann anzeigen, an andere Strings anh?ngen oder anderweitig verwenden kann.

Nun ist auch klar, was insert macht. Man kann damit einen oder mehrere Zeichen in den String einfugen. Die Syntax sieht wie folgt aus:

insert(Stringname, Zeichen oder anderer String, Index)

Mit diesen drei Befehlen ist eine einfache Grundarbeit an Strings m?glich.
12.11.05 22:20


Besonderer Zugriff

Man kann auf einen String, da es ja nur eine Zeichenkette ist, auf eine beliebige Stelle zugreifen und ihr einen neue Wert zuweisen. Dies geht mit den eckigen Klammern [].

Zum Beispiel

procedure TForm1.Button1Click(Sender: TObject);
var a: string;
begin
a := edit1.text;
edit2.Text := a[3];
end;

Man w?rde damit den dritten Buchstaben von dem Text in Edit1 haben.
Damit man diese Funktion optimal nutzen kann, ist der Befehl length kann man die L?nge eines String bekommen.

Zum Beispiel

i := length(a);
oder
i := length(edit1.text);

Dabei gibt die Funktion einen Integerwert aus. N?tzlich ist dies, um nicht versehentlich auf Stellen zugreifen zu wollen, die nicht vorhanden sind.
12.11.05 21:42


Was ist ein String

Strings sind Zeichenketten, dies bedeutet, dass sie aus einer Reihe von aneinandergeh?ngten ASCII Zeichen bestehen (Jedes Schriftzeichen hat einen ASCII Wert).

Listboxen und Editfelder zum Beispiel beinhalten Strings.
Wenn man in ein editfeld eine Zahl eingegeben hat, ist diese jedoch f?r den Computer noch keine Zahl sondern nur eine Zeichenkette.

Beispiel:
Die Zahl 123 in einem Editfeld ist f?r den Computer ein String der aus den Zeichen "1" danach "2" und danach "3" besteht. Um mit diesem String rechnen zu k?nnen muss man diesen erst mit strtoint(string) in einen Integer umwandeln.


Will man eine Kommazahl umwandel, benutzt man die Funktion strtofloat(string). Bei dieser Methode ist das Ergebnis kein Integer sondern eine Real.

Wenn man das ganze andersherum machen m?chte, das hei?t eine Zahl in ein Editfeld schreiben will, dann verwendet man die Methoden inttostr(integer) bzw. floattostr(real).
12.11.05 21:15





Verantwortlich für die Inhalte ist der Autor. Dein kostenloses Blog bei myblog.de! Datenschutzerklärung
Werbung