29. december 2002 - 20:15Der er
14 kommentarer og 2 løsninger
Ang. strings
Jeg har en string der indeholder en fil sti f.eks "c:\test\test1\test2" mit program skal så kunne gå baglæns til nummer 2 "\" og slætte alt foran det, således at der kommer til at stå: "test1\test2"¨
begin temp := ''; count := 0; for i := 1 to length(s) do begin if count >= 2 then temp := temp + s[i]; if s[i] = '\' then count := count + 1; end; prefixstrip := temp; end;
Det er fint nok men den skal "gå baglæns" f.eks ved: "c:\test\test1\test2" og ved "c:\test\test1\test2\test3\test4".. Skal den kun vise de to sidste biblioteker....
function ToTilbage(folder:string):string; var st:String; begin st := copy(folder, 1, lastdelimiter('\', folder)-1); st := copy(st, 1, lastdelimiter('\', st)); st := copy(folder, length(st)+1, length(folder)); result := st; end;
procedure TForm1.Button1Click(Sender: TObject); Const mappe = 'c:\test\test1\test2\test3\test4'; begin showmessage(ToTilbage(mappe)); end;
begin temp := ''; count := 0; for i := length(s) downto 1 do begin if s[i] = '\' then count := count + 1; if count < 2 then temp := s[i] + temp; end; prefixstrip := temp; end;
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.