Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi String kürzen?? (https://www.delphipraxis.net/7645-string-kuerzen.html)

AgentAS 18. Aug 2003 12:19


String kürzen??
 
Hallo Leute,

ich möchte gerne in einem übergebenen String das erste Wort weglassen.

z.B: Edit1.Text := 'Hallo wie gehts';
Edit2.Text := 'wie gehts';

Also in diesem Fall soll aus dem Edit1 der string ohne Hallo an Edit2 übergeben werden.

Gibt es da in Delphi eine Funktion die das erledigt?

Gruß Andreas

sakura 18. Aug 2003 12:22

Re: String kürzen??
 
Nicht eine, aber zwei ;-)
Delphi-Quellcode:
function StripIt(InStr: String; StripAt: Char = ' '): String;
var
  I: Integer;
begin
  I := Pos(StripAt, InStr);
  if I > 0 then
    Result := Copy(InStr, Succ(I), MaxInt)
  else
    Result := '';
end;
aufrufen mit
Delphi-Quellcode:
Edit2.Text := StripIt(Edit1.Text);
...:cat:...

AgentAS 18. Aug 2003 13:55

Re: String kürzen??
 
dann bedanke ich mich mal.

bis zum nächstenmal :D

Gruß Andreas

Sanchez 18. Aug 2003 13:59

Re: String kürzen??
 
Zitat:

Zitat von sakura
Result := Copy(InStr, Succ(I), MaxInt)

Was macht dieses Succ(i). Die Delphi Hilfe sagt mir

Code:
Succ gibt den Nachfolger des Arguments X zurück.

X ist ein Ausdruck von einem ordinalen Datentyp (einschließlich Int64). Der zurückgegebene Wert ist der Nachfolger von X und hat denselben Datentyp. Verwenden Sie Succ nicht für Eigenschaften, für die eine Zuweisungsprozedur definiert ist.
Was bedeuted in diesem Zusammenhang der Nachfolger??

grüße, daniel

Tpercon 18. Aug 2003 14:01

Re: String kürzen??
 
Liefert dir i + 1 (also der nächste Wert) zurück.

sakura 18. Aug 2003 14:05

Re: String kürzen??
 
Tpercon hat es schon richtig gesagt.

In diesem Falle speichert I die Position des Leerzeichens. Succ(I) is also das nächste Zeichen im String, Pred(I) wäre das vorhergehende. Man hätte auch I+1 bzw. I-1 nutzen können.

...:cat:...

AgentAS 18. Aug 2003 14:08

Re: String kürzen??
 
hm,

hab da leider ein kleines Problem.

Wenn ich der Funktion folgendes übergebe:

Edit2.Text := StripIt(Edit1.Text, 'Hallo ');

erhalte ich eine Fehlermeldung Incompatible Typen Char und String!!!


Muss ich irgend eine Unit in die Uses Klausel eintragen damit ich die Funktion erhalte?

Weil hab sie nämlich in meine unit eingebaut.

Gruß Andreas

Tpercon 18. Aug 2003 14:13

Re: String kürzen??
 
Ganz einfach! Das Trennzeichen darf nur ein Zeichen (daher Char) sein! Du hast ganze 6 Zeichen übergeben.

sakura 18. Aug 2003 14:25

Re: String kürzen??
 
Du hast geschrieben, daß Du das erste WORT weglassen willst, also habe ich nach Leerzeichen gesucht. ;-)

...:cat:...

AgentAS 18. Aug 2003 14:36

Re: String kürzen??
 
:idea: na dann

habs verstanden. Danke


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:10 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz