Hallo allemaal,
Is er een methode om de twee volgende variabelen te testen op gelijkheid?
Met een hartelijke groet, FransCode:begin A := 'SysUtils;'; B := 'SysUtils,'; If Pos(A,B) <> 0 then ... // dit werkt niet end;
Hallo allemaal,
Is er een methode om de twee volgende variabelen te testen op gelijkheid?
Met een hartelijke groet, FransCode:begin A := 'SysUtils;'; B := 'SysUtils,'; If Pos(A,B) <> 0 then ... // dit werkt niet end;
Die twee zijn niet gelijk, dus wat wil je precies bereiken?
CompareText en CompareStr geven dacht ik de index terug waarop de eerste afwijking van A t.o.v. B is (hier dus de komma versus de puntkomma).
Bart
Opgelost
Verwijder van SysUtils; het laatste karakter met A := StringReplace(A,';','',[]);
H.G. Frans
en dan?
wees dan consequent en doe zoiets alsCode:begin A := 'SysUtils,'; B := 'SysUtils;'; A := StringReplace(A,';','',[]); If Pos(A,B) <> 0 then ... // dit werkt niet end;
en het lijkt erop dat dit een stukje code is om aanwezige units te vergelijken en dan gaat het alsnog fout als het bijvoorbeeld "sysutils ;" of "sysutils ," is.Code:begin A := StringReplace(A,';','',[]); A := StringReplace(A,',','',[]); B := StringReplace(B,';','',[]); B := StringReplace(B,',','',[]); end,;
Delphi Code:
const interpunctie = [',',';','','!','.']; if comparetext(trimset(a,interpunctie),trimset(b,interpunctie)) then ...
Maar dit is meer voor en na string, niet tussen woorden in de string.
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks