Skip to content

TCharacter

Character operation.

Declaration

Source position: character.pas line 87

type

  TCharacter = class
  public
    const
      MaxHighSurrogate = UnicodeChar(HIGH_SURROGATE_END);
      MaxLowSurrogate = UnicodeChar(LOW_SURROGATE_END);
      MaxSurrogate = UnicodeChar(LOW_SURROGATE_END);
      MinHighSurrogate = UnicodeChar(HIGH_SURROGATE_BEGIN);
      MinLowSurrogate = UnicodeChar(LOW_SURROGATE_BEGIN);
      MinSurrogate = UnicodeChar(HIGH_SURROGATE_BEGIN);
    constructor Create;
    class function ConvertFromUtf32 : UnicodeString;
    class function ConvertToUtf32(const AString: UnicodeString; 
                             AIndex: Integer) : UCS4Char; overload;
    class function ConvertToUtf32(const AString: UnicodeString; 
                             AIndex: Integer; out ACharLength: Integer)
                              : UCS4Char; overload;
    class function ConvertToUtf32(const AHighSurrogate: UnicodeChar; 
                             const ALowSurrogate: UnicodeChar)
                              : UCS4Char; overload;
    class function GetNumericValue(AChar: UnicodeChar) : Double; overload;
    class function GetNumericValue(const AString: UnicodeString; 
                              AIndex: Integer) : Double; overload;
    class function GetNumericValue(aChar: UCS4Char) : Double; overload;
    class function GetUnicodeCategory(AChar: UnicodeChar) : TUnicodeCategory; overload;
    class function GetUnicodeCategory(const AString: UnicodeString; 
                                 AIndex: Integer) : TUnicodeCategory; overload;
    class function GetUnicodeCategory(aChar: UCS4Char) : TUnicodeCategory; overload;
    class function IsControl(AChar: UnicodeChar) : Boolean; overload;
    class function IsControl(const AString: UnicodeString; AIndex: Integer)
                         : Boolean; overload;
    class function IsControl(aChar: UCS4Char) : Boolean; overload;
    class function IsDigit(AChar: UnicodeChar) : Boolean; overload;
    class function IsDigit(const AString: UnicodeString; AIndex: Integer)
                       : Boolean; overload;
    class function IsDigit(aChar: UCS4Char) : Boolean; overload;
    class function IsSurrogate(AChar: UnicodeChar) : Boolean; overload;
    class function IsSurrogate(const AString: UnicodeString; 
                          AIndex: Integer) : Boolean; overload;
    class function IsSurrogate(aChar: UCS4Char) : Boolean; overload;
    class function IsHighSurrogate(AChar: UnicodeChar) : Boolean; overload;
    class function IsHighSurrogate(const AString: UnicodeString; 
                              AIndex: Integer) : Boolean; overload;
    class function IsHighSurrogate(aChar: UCS4Char) : Boolean; overload;
    class function IsLowSurrogate(AChar: UnicodeChar) : Boolean; overload;
    class function IsLowSurrogate(const AString: UnicodeString; 
                             AIndex: Integer) : Boolean; overload;
    class function IsLowSurrogate(aChar: UCS4Char) : Boolean; overload;
    class function IsSurrogatePair(const AHighSurrogate: UnicodeChar; 
                              const ALowSurrogate: UnicodeChar)
                               : Boolean; overload;
    class function IsSurrogatePair(const AString: UnicodeString; 
                              AIndex: Integer) : Boolean; overload;
    class function IsLetter(aChar: UCS4Char) : Boolean; overload;
    class function IsLetter(AChar: UnicodeChar) : Boolean; overload;
    class function IsLetter(const AString: UnicodeString; AIndex: Integer)
                        : Boolean; overload;
    class function IsLetterOrDigit(aChar: UCS4Char) : Boolean; overload;
    class function IsLetterOrDigit(AChar: UnicodeChar) : Boolean; overload;
    class function IsLetterOrDigit(const AString: UnicodeString; 
                              AIndex: Integer) : Boolean; overload;
    class function IsLower(AChar: UnicodeChar) : Boolean; overload;
    class function IsLower(const AString: UnicodeString; AIndex: Integer)
                       : Boolean; overload;
    class function IsLower(aChar: UCS4Char) : Boolean; overload;
    class function IsNumber(AChar: UnicodeChar) : Boolean; overload;
    class function IsNumber(const AString: UnicodeString; AIndex: Integer)
                        : Boolean; overload;
    class function IsNumber(aChar: UCS4Char) : Boolean; overload;
    class function IsPunctuation(AChar: UnicodeChar) : Boolean; overload;
    class function IsPunctuation(const AString: UnicodeString; 
                            AIndex: Integer) : Boolean; overload;
    class function IsPunctuation(aChar: UCS4Char) : Boolean; overload;
    class function IsSeparator(AChar: UnicodeChar) : Boolean; overload;
    class function IsSeparator(const AString: UnicodeString; 
                          AIndex: Integer) : Boolean; overload;
    class function IsSeparator(aChar: UCS4Char) : Boolean; overload;
    class function IsSymbol(AChar: UnicodeChar) : Boolean; overload;
    class function IsSymbol(const AString: UnicodeString; AIndex: Integer)
                        : Boolean; overload;
    class function IsSymbol(aChar: UCS4Char) : Boolean; overload;
    class function IsUpper(AChar: UnicodeChar) : Boolean; overload;
    class function IsUpper(const AString: UnicodeString; AIndex: Integer)
                       : Boolean; overload;
    class function IsUpper(aChar: UCS4Char) : Boolean; overload;
    class function IsWhiteSpace(AChar: UnicodeChar) : Boolean; overload;
    class function IsWhiteSpace(const AString: UnicodeString; 
                           AIndex: Integer) : Boolean; overload;
    class function IsWhiteSpace(aChar: UCS4Char) : Boolean; overload;
    class function ToLower(AChar: UnicodeChar) : UnicodeChar; overload;
    class function ToLower(const AString: UnicodeString) : UnicodeString; overload;
    class function ToLower(const AString: UnicodeString; 
                      const AOptions: TCharacterOptions) : UnicodeString; overload;
    class function ToLower(aChar: UCS4Char) : UCS4Char; overload;
    class function ToUpper(AChar: UnicodeChar) : UnicodeChar; overload;
    class function ToUpper(const AString: UnicodeString) : UnicodeString; overload;
    class function ToUpper(const AString: UnicodeString; 
                      const AOptions: TCharacterOptions) : UnicodeString; overload;
    class function ToUpper(aChar: UCS4Char) : UCS4Char; overload;
    class function MaxCodePoint : Integer;
    class function UnicodeDataVersion : UnicodeString;
    class function IsDefined(aChar: UnicodeChar) : Boolean; overload;
    class function IsDefined(aChar: UCS4Char) : Boolean; overload;
    class function IsDefined(const S: UnicodeString; Index: Integer)
                         : Boolean; overload;
  end;

Inheritance

Description

TCharacter is provided for Delphi compatibility. All it's class functions and methods are also available as regular functions.

Methods

Member Visibility Description
ConvertFromUtf32 public Convert a UTF32 character to UnicodeString.
ConvertToUtf32 public Convert a UTF16 character to a UTF32 character.
Create public Constructor (do not call).
GetNumericValue public Get the numeric value of the character.
GetUnicodeCategory public Get the Unicode category of a character.
IsControl public Check whether a Unicode character is a Unicode control character.
IsDefined public
IsDigit public Check whether a Unicode character is a digit.
IsHighSurrogate public Check whether a Unicode character is a surrogate in the high range.
IsLetter public Check if a Unicode character is a letter.
IsLetterOrDigit public Check if a Unicode character is a letter or digit.
IsLower public Check if a Unicode character is a lowercase letter.
IsLowSurrogate public Check whether a Unicode character is a surrogate in the low range.
IsNumber public Check if a Unicode character is a number.
IsPunctuation public Check if a Unicode character is a punctuation character.
IsSeparator public Check if a Unicode character is a separator character.
IsSurrogate public Check whether a Unicode character is a surrogate.
IsSurrogatePair public Check if a pair of characters is a set of high/low surrogate characters.
IsSymbol public Check if a Unicode character is a symbol character.
IsUpper public Check whether a Unicode character is an uppercase letter.
IsWhiteSpace public Check whether a Unicode character is a whitespace character.
MaxCodePoint public
ToLower public Convert a character or string to lowercase.
ToUpper public Convert a character or string to uppercase.
UnicodeDataVersion public