Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Pos('\',String) nur rückwärts (https://www.delphipraxis.net/104625-pos-%5C-string-nur-rueckwaerts.html)

Innos 7. Dez 2007 17:14


Pos('\',String) nur rückwärts
 
Hiho

(vorweg: SuFu hab ich benutzt und auch was dazu gefunden, ist aber alles nicht das Wahre)

ich habe zB einen Pfad: "C:\Programme\KA\Bla\"
so^^ jetzt will ich aus diesem Beispiel string "C:\Programme\KA\" machen...
das heißt, den string ab dem VORLETZTEN "\" löschen.

nur wie mach ich das^^ denn mit

Delphi-Quellcode:
Pos('\',last);
gibt er mir "3" also nur den ersten "\" aus und PosEx weiß ich 1. nicht was das genau macht und 2. zeigt er bei mir dann einen Fehler an wenn ich
Delphi-Quellcode:
PosEx('\',last)
schreibe -.-

also habt ihr eine Idee?^^

Thx für eure Hilfe schonmal,
mfg

EDIT: mit Delete() kann ich umgehen ich brauch nur die position vom vorletztem "\"

Christian Seehase 7. Dez 2007 17:15

Re: Pos('\',String) nur rückwärts
 
Moin Innos,

schau Dir mal in der Hilfe LastDelimiter an.

Apollonius 7. Dez 2007 17:19

Re: Pos('\',String) nur rückwärts
 
Delphi-Referenz durchsuchenExtractFilePath könnte ganz interessant für dich sein.

Innos 7. Dez 2007 17:21

Re: Pos('\',String) nur rückwärts
 
hui thx für diese schnelle antwort!! :thumb:

meine hilfe funktioniert leider net weil delphie irgendeine blöde datei net finden kann...
habe aber dennoch das mal ausprobiert und er gibt mir die Position vom letzten "\"
eigentlich könnte ich jetzt immer prüfen, ob das letzte zeichen ein "\" und ansonsten löschen^^
wird zwar n bisl länger aber das ergebnis ist das gleiche...

DANKE ^^ hast mir sehr geholfen

@Apollonius mmhh jo ich schaus mir mal an^^ weil FilePath hört sich für meine zwecke ganz gut an...

sirius 7. Dez 2007 17:28

Re: Pos('\',String) nur rückwärts
 
Zitat:

Zitat von Apollonius
Delphi-Referenz durchsuchenExtractFilePath könnte ganz interessant für dich sein.

Er willl ja nicht den Pfad aus einer Pfad+Datei herausbekommen, sondern nur den letzten Unterordner "löschen".

Apollonius 7. Dez 2007 17:31

Re: Pos('\',String) nur rückwärts
 
:oops: Das kommt davon, wenn man nicht genau genug liest.

Christian Seehase 7. Dez 2007 17:35

Re: Pos('\',String) nur rückwärts
 
Moin Innos,

die Position des letzten \ kannst Du z.B. so bekommen:

Delphi-Quellcode:
LastDelimiter('\',ExcludeTrailingPathDelimiter(sPath));

DeddyH 7. Dez 2007 17:37

Re: Pos('\',String) nur rückwärts
 
So vielleicht?
Delphi-Quellcode:
function GetForeLastDir(const sDir: string): string;
begin
  Result := ExtractFilePath(ExcludeTrailingPathDelimiter(sDir));
end;

Innos 7. Dez 2007 18:15

Re: Pos('\',String) nur rückwärts
 
habs so gemacht^^

Delphi-Quellcode:
go:=filelistbox1.Directory;
repeat
 Delete(go, length(go), length(go));
until (LastDelimiter('\', go)=length(go));
go is ein String...
und jetzt hab ich das nächste prob mit diesem filelistbox-kram -.- aba neuer thread :wink:

thx an alle


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:26 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