Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: möchte FloatToStrF wieder in Float konv. (Zeichenfilter?

  Alt 23. Sep 2006, 11:24
Moin Harmonie,

anderer Vorschlag:

Delphi-Quellcode:
function OnlyFloatChars(const AValue : string) : string;

var
  i : integer;
  iPos : integer;

begin
  // Das Ergebnis kann höchstens so lang sein, wie
  // der übergebene Wert
  SetLength(Result,length(AValue));
  iPos := 0;
  for i := 1 to length(AValue) do begin
    // Ist es ein gültiges Zeichen in einem Floatstring?
    if AValue[i] in ['0'..'9',DecimalSeparator,'-','+','e','E'] then begin
      // Auf nächste Ergebnisstelle setzen
      inc(iPos);
      // und eintragen
      Result[iPos] := AValue[i];
    end;
  end;
  // Länge des Ergebnisses auf tatsächlichen Wert korrigieren
  SetLength(Result,iPos);
end;
Die Funktion setzt voraus, dass es sich bei dem übergebenen Wert um einen String handelt der, bis auf die ungültigen Zeichen, ein Float-Zahl darstellt.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat