Extract numbers from a string with Delphi

type
  TCharSet = set of Char;

function StripNonConforming(const S: string;
  const ValidChars: TCharSet): string;
var
  DestI: Integer;
  SourceI: Integer;
begin
  SetLength(Result, Length(S));
  DestI := 0;
  for SourceI := 1 to Length(S) do
    if S[SourceI] in
      ValidChars then
    begin
      Inc(DestI);
      Result[DestI] := S[SourceI]
    end;
  SetLength(Result,
    DestI)
end;

function StripNonNumeric(const S: string): string;
begin
  Result :=
    StripNonConforming(S, ['0'..'9'])
end;

No comments:

Post a Comment