Avatar billede koonz Nybegynder
17. januar 2000 - 20:12 Der er 7 kommentarer og
1 løsning

Udvalg i string

Hvordan "piller" jeg lettest Test ud i følgende string

C:\Program\Olebole\Gik\Test.ini
Avatar billede erikjacobsen Ekspert
17. januar 2000 - 20:25 #1
s:=extractfilename('C:\Program\Olebole\Gik\Test.ini');
p:=pos('.',s);
if p>0 then s:=copy(s,1,p-1);
Avatar billede lrj Nybegynder
18. januar 2000 - 00:13 #2
erik, meget fint, men hvis der nu er et . i filnavnet? Det er jo tilladt under win95 :o)

extractfileending kan vistnok bruges (måske hedder den noget andet) - og den kan så bruge stil pos-søgningen.
Avatar billede koonz Nybegynder
18. januar 2000 - 09:15 #3
Nu er jeg ikke lige hjemme til at afprøve det, men vil overstående ikke give

Test.Ini ?

Jeg skal "af" med ini også
Avatar billede koonz Nybegynder
18. januar 2000 - 09:16 #4
Arrhhh - nu tror jeg den fes ind, hvis positionen er større end . 
Så indsætter den ikke - du får point, når jeg har testet den
Avatar billede erikjacobsen Ekspert
18. januar 2000 - 09:42 #5
Joh, såmænd, lrj. Men til hans fakiske spørgsmål, med filnavnet "C:...\Test.ini" er det jo rigtigt :-)

Prøv:

s:=extractfilename('C:\Program\Olebole\Gik\Test.ini');
p:=rpos('.',s);
if p>0 then s:=copy(s,1,p-1);

hvis der havde været en rpos-funktion, det er det ikke, så den skriver vi
selv:


  function rpos(c: char; s: string): integer;
  var i: integer;
  begin
    result:=-1; i:=length(s);
    while (result=-1) and (i>=1) do
    begin
      if s[i]=c then
        result:=i
      else
        dec(i)
    end;
  end;

(Variant over søgeskabelonen)
Avatar billede michaelras Nybegynder
18. januar 2000 - 15:55 #6
Hvad med:

S := ExtractFileName(FilNavn);
Delete(S, Length(S) - Length(ExtractFileExt(s)) + 1, Length(ExtractFileExt(s)));

Ved det er meget a la det der allerede er givet som svar...

Michael
Avatar billede erikjacobsen Ekspert
18. januar 2000 - 19:43 #7
Ja, MIchael, det er det lrj foreslår. Bestemt en mulighed. Hvorfor
er der ikke en "rpos" i Delphi - eller er der? Jeg er åbenbart efterhånden
blevet for vant til ASP, PHP hvor den, selvfølgelig, er der (med et
andet navn).
Avatar billede lrj Nybegynder
19. januar 2000 - 12:52 #8
erik> Well, den slags streng-manipulation er Delphi ikke helt udstyret til - man må selv ned og pille med lidt kode... Tror forresten nok det er blevet bedre i 5'eren, meen...
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester