![]() |
Aus einem String das letzte Zeichen löschen
Hallo,
wie kann ich überprüfen ob ein String als letztes Zeichen ein "\" hat und wenn ja, dass es automatisch gelöscht wird, aber den Teil davor unberührt lässt? |
Re: Aus einem String das letzte Zeichen löschen
Hi, ist ganz einfach, hier mal mit allen Sicherheitsbafragen.
Delphi-Quellcode:
...:cat:...
if Length(aString) > 0 then
if AnsiLastChar(aString)^ = '\' then SetLength(aString, Pred(Length(aString))); |
Re: Aus einem String das letzte Zeichen löschen
Prüfen, ob letztes Zeichen '\' ist:
Delphi-Quellcode:
Letztes Zeichen löschen:
if s[Length(s)] = '\' then //...
Delphi-Quellcode:
Andere Möglichkeit: Mit ExtractFileDir bekommt man die Pfadangabe ohne das abschließende Slash/Backslash. Wenns dir also da rum geht, nimm am besten ExtractFileDir.
Delete(s, Length(s), 1);
|
Re: Aus einem String das letzte Zeichen löschen
Nach folgendem Code
Delphi-Quellcode:
.. gibt er mir diese Meldung:
if AnsiLastChar(Edit2.Text)^ = '\' then SetLength(Edit2.Text, Pred(Length(Edit2.Text)));
"Constant object cannot be passed as var parameter" |
Re: Aus einem String das letzte Zeichen löschen
Das liegt an SetLength, welches nur Variablen annimmt und keine Objekt-Eigenschaften.
Delphi-Quellcode:
...:cat:...
if AnsiLastChar(Edit2.Text)^ = '\' then
Edit2.Text := Copy(Edit2.Text, 1, Pred(Length(Edit2.Text)); |
Re: Aus einem String das letzte Zeichen löschen
Hi, versuch mal das:
Delphi-Quellcode:
Edit: Zu spät :cry:
var
s: String; begin s := Edit1.Text; if AnsiLastChar(s)^ = '\' then SetLength(s, Pred(Length(s))); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:07 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