I don't do much Delphi anymore (any really) but this has been hanging around in my inbox for a while so I cleaned it up. This is a simple function that is a modification of IsValidIdent to strip invalid characters from a string.
function StripInvalidCharacters(const Ident: string): string; function Alpha(C: Char): Boolean; inline; begin Result := TCharacter.IsLetter(C) or (C = '_'); end; function AlphaNumeric(C: Char): Boolean; inline; begin Result := TCharacter.IsLetterOrDigit(C) or (C = '_'); end; var I, L: Integer; begin L := Length(Ident); if (L > 0) and Alpha(Ident[1]) then Result := Ident[1]; for I := 2 to L do if AlphaNumeric(Ident[I]) then Result := Result + Ident[I]; end; var LocalVal: string; LocalHash: Integer; begin if IsValidIdent(Value) then LocalVal := StripInvalidCharacters(Value) else
No comments:
Post a Comment