AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Aus einem String das letzte Zeichen löschen
Thema durchsuchen
Ansicht
Themen-Optionen

Aus einem String das letzte Zeichen löschen

Ein Thema von Rapthor · begonnen am 15. Sep 2003 · letzter Beitrag vom 15. Sep 2003
Antwort Antwort
Rapthor

Registriert seit: 30. Nov 2002
139 Beiträge
 
#1

Aus einem String das letzte Zeichen löschen

  Alt 15. Sep 2003, 19:53
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?
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Aus einem String das letzte Zeichen löschen

  Alt 15. Sep 2003, 19:55
Hi, ist ganz einfach, hier mal mit allen Sicherheitsbafragen.

Delphi-Quellcode:
if Length(aString) > 0 then
  if AnsiLastChar(aString)^ = '\then
    SetLength(aString, Pred(Length(aString)));
......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Aus einem String das letzte Zeichen löschen

  Alt 15. Sep 2003, 19:58
Prüfen, ob letztes Zeichen '\' ist:
if s[Length(s)] = '\then //... Letztes Zeichen löschen:
Delete(s, Length(s), 1); 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.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Rapthor

Registriert seit: 30. Nov 2002
139 Beiträge
 
#4

Re: Aus einem String das letzte Zeichen löschen

  Alt 15. Sep 2003, 20:00
Nach folgendem Code

if AnsiLastChar(Edit2.Text)^ = '\then SetLength(Edit2.Text, Pred(Length(Edit2.Text))); .. gibt er mir diese Meldung:

"Constant object cannot be passed as var parameter"
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Aus einem String das letzte Zeichen löschen

  Alt 15. Sep 2003, 20:02
Das liegt an SetLength, welches nur Variablen annimmt und keine Objekt-Eigenschaften.

Delphi-Quellcode:
if AnsiLastChar(Edit2.Text)^ = '\then
  Edit2.Text := Copy(Edit2.Text, 1, Pred(Length(Edit2.Text));
......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Aus einem String das letzte Zeichen löschen

  Alt 15. Sep 2003, 20:02
Hi, versuch mal das:

Delphi-Quellcode:
var
  s: String;
begin
  s := Edit1.Text;
  if AnsiLastChar(s)^ = '\then SetLength(s, Pred(Length(s)));
Edit: Zu spät
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:00 Uhr.
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