![]() |
CompareStr Erläuterung? Alternativen?
Hallo Community,
wir sollen als Hausaufgabe die Funktion 'CompareStr' verwenden. Ich habe innerhalb dieser Funktion keinerlei Sinn gesehen und meinen Lehrer darauf angesprochen. Mir selber erscheint dieser als recht unerfahren und auch er hatte gewaltige Probleme mir zu erläutern, was dahinter steckt. Auch einige Referenzen wollten mich nicht aufklären. Es handelt sich um die Funktion:
Code:
Wir sollen einen Text (Edit1.Text) auf den Charakter 'e' überprüfen.
CompareStr(s1, s2)
Rein logisch würde es doch dann dementsprechend wiefolgt aussehen:
Code:
Laut der Defintion unser Funktion lautet es wiefolgt:
begin
if (CompareStr((Edit1.Text), 'e') > 0) then Label4.Caption := 'Es ist mindestens ein "e" vorhanden' else if (CompareStr((Edit1.Text),'e') < 0) then Label4.Caption := 'Es ist kein "e" vorhanden' else // CompareStr (...) = 0 Label4.Caption := 'Es ist genau ein "e" vorhanden' end; Zitat:
Habt ihr direkt einen Vorschlag, den ich anstelle von CompareStr verwenden kann? Mit freundlichen Grüßen, Elex. |
AW: CompareStr Erläuterung? Alternativen?
Dafür gibt es die Online-Hilfe und wenn die aus welchen Gründen auch immer nicht zur Verfügung steht, dann schaut man da
![]() Allerdings wird CompareStr eher zur Sortierung gebraucht, als dazu festzustellen ob in einem String ein anderer String enthalten ist. |
AW: CompareStr Erläuterung? Alternativen?
Zitat:
das stimmt so nicht, CompareStr sortiert. D.h. der 1. Fall bedeutet, der Text fängt mit einem Buchstaben nach "e" an. Der 2. Fall bedeutet er fängt mit einem Buchstaben vor "e" an.(Könnte sein, dass ich beide Fälle vertausche) im 3. Fall ist der Text genau ein "e". Also ist wie du es prüfen willst wohl am ehesten so:
Code:
if CompareStr (...) = 0
Label4.Caption := 'Das Editfeld hat "e" als Text' |
AW: CompareStr Erläuterung? Alternativen?
|
AW: CompareStr Erläuterung? Alternativen?
Wenn euer Lehrer euch wirklich den Auftrag gegeben hat, mithilfe der Funktion CompareStr einen String zu durchsuchen, ist er eine Lusche (was mich nicht weiter wundern würde, scheint bei Informatiklehrern Standard zu sein).
CompareStr ist, wie bereits gesagt wurde, dafür da, um Strings zu sortieren: Es wird hierbei immer nur der gesamte String verglichen. Wenn du einen String nach einem anderen String durchsuchen willst, ist die Funktion ![]()
|
AW: CompareStr Erläuterung? Alternativen?
Vielen Dank.
Dann unterrichten sie schon Delphi an einem technischen Gymnasium (ich persönlich bin kein Freund hiervon) und dann auch noch falsch. Tut mir Leid, aber armes Bildungssystem. Danke an alle Hilfen. Der Lehrer darf sich was von mir anhören. Ich hatte den Verdacht schon am letzten Info-Tag. |
AW: CompareStr Erläuterung? Alternativen?
[erbsenzählen]CompareStr sortiert nicht, sondern gibt eine Zahl zurück, welche man für eine Sortierung auswerten kann.[/erbsenzählen]
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz