André Winkelmann + Hagelkreuzstr. 4 + 45966 Gladbeck + E-Mail: Kontakt
Passende  Lösungen   für  Existenzgründer,
kleine Unternehmen und einfach für jeden!

Wortsuche im String

Bei Lazarus und Free Pascal kann man ein Wort in einem String mit der Funktion pos(wort, String); suchen. Nachfolgend möchte ich dir das mit einem kleinen Programm zeigen.

Abb. 1-00 Software Stingsuche

Die Benutzeroberfläche sieht wie folgt aus siehe Abbildung 1.00. Die Editfelder tragen in meiner Software von oben nach unten die folgenden Namen. Den Namen kannst du über den Objektinspektor ändern. Das Editfeld unter dem Label >String eingeben< trägt den Namen: EdtStringEingabe. Das Editfeld unter dem String >Wortsuche< trägt den Namen: EdtWortSuche. Das Editfeld unter dem Label mit der Caption >String Zeichen< trägt den Namen: EdtStringZeichenZahl.
Der Button trägt den Namen: BtnWortsuche. Das unterste Editfeld trägt den Namen: EdtErgebnis.
Nachfolgend der habe ich für den Button BtnWortsuche ein OnClick() Ereignis eingefügt. Nachfolgend der Quelltext der Prozedure.

Quelltext:

01: procedure TForm1.BtnWortsucheClick(Sender: TObject);
02: var
03: word, myString : string;
04: begin
05: word := EdtWortSuche.Text;
06: myString := EdtStringEingabe.Text;
07: EdtErgebnis.Text := IntToStr(Pos(word, myString));
08: end;

In Zeile 01 siehst du den Kopf der Prozedure. Anhand des Namen sehen wir das die Prozedure im Pascal Quelltext des Form1 steht und den Namen BtnWortsucheClick() trägt. Übergeben wird hier ein Objekt. Was Objekte sind besprechen wir zu einem späteren Zeitpunkt. Da dieser Teil der Prozedure automatisch angelegt wird, sehen wir darüber weg.
In Zeile 02 das var sagt aus das ich erst noch ein paar Variablen deklarieren möchte.
In Zeile 03 lege ich die beiden String Variablen word (englisch) und myString fest.
In Zeile 04 leite ich mit dem Wort begin den Anweisungsteil innerhalb der Prozedure ein.
Zeile 05: hier kopiere ich den Textinhalt vom Editfeld EdtWortSuche in die String Variable word.
Zeile 06 Hier kopiere ich den Textinhalt vom Editfeld EdtStringEingabe in die String Variable myString.
Zeile 07: Hier schreibe ich das Ergebnis Textinhalt der Funktion IntToStr() und Pos(word, myString) in das Editfeld EdtErgebnis. Mit der Funktion Pos() erhalte ich einen Integer Wert diesen wandele ich mit der Funktion IntToStr in einem String um. Für die Zuweisung eines Editfeldes müssen bei Seiten der Zuweisung den gleichen variablen Typ haben. Bei Editfeldern ist das die Variable String.
Als kleine Spielerei habe ich vom letzten Artikel die Zeichenanzahl mit in das Programm hineingebracht. Hier nur noch einmal kurz der Quelltext. Das Ereignis ist ein Change Ereignis des Edtfeldes EdtStringEingabe. Das bedeutet bei der Eingabe des String in dem wir ein Wort suchen möchten ändern sich der Counter bei der Eingabe des Textes.

Abb 1.01 Software Sting Suche wird ausgefuehrt

Quelltext der Prozdeure: EdtStringEingabeChange
procedure TForm1.EdtStringEingabeChange(Sender: TObject);
begin
EdtStringZeichenZahl.Text := IntToStr(length(EdtStringEingabe.Text));
end;
Im Anhang gibt dann noch das kleine Programm zum Download.

Anhang:

Software Download: Wortsuche im String

Inhaltsverzeichnis

Kapitel 01: Aufbau
1.1 Vorwort und Kursaufbau
1.2 Ressourcen
1.3 Der Autor und Kontakt
1.4 Das E-Book / PDF Dokumente
1.5 Der Videokurs

Kapitel 02: Installation
2.1 Lazarus IDE Bezugsquellen
2.2 Installation unter Windows
2.3 Installation unter Linux

Kapitel 03: Überblick
3.1 Die Lazarus-IDE
3.1 Projekt neu starten
3.2 Projekteinstellungen
3.2.1 Form Icon ändern
3.2.2 Compiler Einstellungen
3.2.3 Versionsinformationen
3.3 Das Form
3.4 Objektinspektor
3.5 Nachrichten
3.6 Projekt speichern

Kapitel 04: Eingabe und Ausgabe
4.1 In der Windows Konsole
4.2 Im Fenster mit GUI
4.3 TLabel: Label -> Text
4.4 TEdit: Editfeld
4.5 TButton: Button
4.6 TBitBtn: Button mit Bild
4.7 TMainMenu: Das Hauptmenü
4.8 TCombobox: PullDown Menü
4.9 TPageControl
4.10 Die Komponenten Bibliothek

Kapitel 05: Variablen und Konstanten
5.Variablen mit ganzen Zahlen
5.2 Variablen mit Komma
5.3 Variablen mit einem Zeichen
5.4 Variablen mit Text
5.5 Konstanten

Kapitel 06: Stings
6.1 Länge eines Strings
6.2 Wortsuche im String
6.3 Zeichen ersetzen
6.4 Position Ab
6.5 Wort an Pos X einfügen

Kapitel 07: Arithmetische Operatoren
7.1 Der Additionoerator, Plus Operator
7.2 Der Subtraktionsoperator, Minus Operator
7.3 Der Multiplikation, Mal Operator
7.4 Der Divisionsoperator, Teilen Operator

Kapitel 08: Vergleichsoperatoren
8.1 Der Gleichoperator
8.2 Der kleiner Operator
8.3 der größer Operator
8.4 Der Kleiner-Gleichoperator
8.5 Der Größer-Gleichoperator

Kapitel 09: Abfragen mit IF-Else
9.1 If Abfrage
9.1 If Else Abfrage
9.2 verschachtelte IF Else Abfragen

Kapitel 10: Array
10.1 Grundlagen zum Array
10.2 Statisches Array
10.3 Eindimensonale Arrays
10.3 Mehrdimensonale Arrays
10.4 Dynamische Arrays
10.5 Zugriff auf ein Array

Kapitel 11: Schleifen
11.1 Die For Schleife
11.2 Die For Schleife mit Array
11.3 Die While Schleife
11.4 Die Do While Schleife
11.4 Die Repeat Unitl Schleife

Kapitel 12: Prozeduren und Funktionen
12.1 Prozeduren
12.2 Funktionen

Kapitel 13: Programmierkonzepte
13.1 Das 2 Schichtenmodell
13.2 Das 3 Schichtenmodell
13.3 Das Mehrschichtenbnmodell

Kapitel 14: objektorientierte Programmierung (kurz OOP)
14.1 Das Konzept
14.2 Eigene Units (Klassen)
14.3 Instanzen und Objekte
14.4 Methoden
14.5 Attribute (Eigenschaften)
14.6 Interface (Schnittstellen)

Beitrag kommentieren

Bitte verfasse einen Kommentar.

Dein Kommentar wird vor der Freischaltung von einem Admin moderiert.