Thema: Delphi Nur zahlen im string

Einzelnen Beitrag anzeigen

TBx
(Administrator)

Registriert seit: 13. Jul 2005
Ort: Stadthagen
1.879 Beiträge
 
Delphi 12 Athens
 
#6

Re: Nur zahlen im string

  Alt 17. Jul 2007, 21:32
Willst Du nur alle Numerischen Anteile des Strings zurückbekommen, oder soll die Annahme des Strings einfach verweigert werden, wenn da was anderes als Ziffern drin gefunden wird?

Für den ersten Fall kannst DU sowas machen:
Delphi-Quellcode:
function CopyNumericOnly(s: string): string;
var
  i, l : integer;
begin
  Result := '';
  i := 1;
  l := Length (s) + 1;
  while i < l do
  begin
    if pos (s [i], '0123456789') > 0 then
    begin
      Result := Result + S [i];
    end;
    inc (i);
  end;
end;
Für den zweiten Fall sowas:
Delphi-Quellcode:
function IsNumeric(s: string): Boolean;
var
  i : integer;
begin
  Result := True;
  i := Length (s);
  while (Result and (i > 0)) do
  begin
    Result := (pos (copy (s, i, 1), '0123456789') > 0);
    dec (i);
  end;
end;
quick and dirty, sollte aber funktionieren

Hope it helps

Thomas
Thomas Breitkreuz
Gruß Thomas
- Admin DelphiPRAXIS
- Admin Delphi-Treff
- Embarcadero MVP
  Mit Zitat antworten Zitat