Skip to content

TCharacter.IsSurrogatePair

Check if a pair of characters is a set of high/low surrogate characters

Declaration

Source position: character.pas line 108

public 
  class function IsSurrogatePair(const AHighSurrogate: UnicodeChar; 
                                const ALowSurrogate: UnicodeChar)
                                 : Boolean;  Overload;  Static;
  class function IsSurrogatePair(const AString: UnicodeString; 
                                AIndex: Integer) : Boolean;  Overload
                                ;  Static;

Description

IsSurrogatePair returns True if AHighSurrogate and ALowSurrogate form a valid Unicode surrogate pair. (AHighSurrogate is a high surrogate and ALowSurrogate a matching low surrogate) The character can be specified as a UTF16 character AChar or a pair of UTF16 encoded characters starting at position AIndex in string AString.

Errors

If AIndex is not a valid character index in the string AString, an EArgumentOutOfRangeException exception is raised. If the character at that position is not complete, an EArgumentException exception is raised.

See also

Name Description
EArgumentException Invalid argument passed to a function
IsControl Check whether a Unicode character is a Unicode control character
IsDigit Check whether a Unicode character is a digit
IsHighSurrogate Check whether a Unicode character is a surrogate in the high range
IsLetter Check if a Unicode character is a letter.
IsLetterOrDigit Check if a Unicode character is a letter or digit
IsLower Check if a Unicode character is a lowercase letter
IsLowSurrogate Check whether a Unicode character is a surrogate in the low range
IsNumber Check if a Unicode character is a number
IsPunctuation Check if a Unicode character is a punctuation character
IsSurrogate Check whether a Unicode character is a surrogate
IsSymbol Check if a Unicode character is a symbol character
IsUpper Check whether a Unicode character is an uppercase letter
IsWhiteSpace Check whether a Unicode character is a whitespace character