Einzelnen Beitrag anzeigen

Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#5

Re: Hilfe zu Funktion "DeleteChars"

  Alt 17. Aug 2005, 20:45
Moin,

danke für die Hilfe, habs alles soweit abgeändert .

Noch eine Frage zu einer anderen Funktion und zwar:

Delphi-Quellcode:
function StripCharsLeft(const S: string; CharSet: TCharSet): string;
var
  PResIdx: PChar;
  PSIdx: PChar;
  Idx: Integer;
  SLen: Integer;
begin
  SetLength(Result, Length(S));
  if S <> 'then
  begin
    PResIdx := @Result[1];
    PSIdx := @S[1];
    Idx := 0;
    SLen := Length(S);
    while (PSIdx^ <> #0) and (PSIdx^ in CharSet) do
    begin
      Inc(PSIdx);
      Inc(Idx);
    end;
    if PSIdx^ <> #0 then
    begin
      MoveMemory(@Result[1], PSIdx, SLen-Idx);
      SetLength(Result, SLen-Idx);
    end;
  end;
end;
Und zwar soll die Funktion einzelne Zeichen am Anfang des Strings entfernen, solange bis ein Zeichen kommt, das nicht im CharSet vorkommt.

Hab ich hier alles richtig gemacht?

Also der Aufruf von "showmessage(StripCharsLeft('hallo', ['h', 'a']));" scheint mit "llo" zu stimmen, nur trotzdem wüsst ich gern ob alles soweit richtig ist? Z.B MoveMemory? Könnte es nicht Probleme gebe wenn ich einige Zeichen einfach verschiebe? Z.B wenn Delphi den String von dem ich verschoben habe, freigibt?
Mario
  Mit Zitat antworten Zitat