Char.IsSurrogate Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Indicates whether a character has a surrogate code unit.
Overloads
IsSurrogate(String, Int32) |
Indicates whether the character at the specified position in a specified string has a surrogate code unit. |
IsSurrogate(Char) |
Indicates whether the specified character has a surrogate code unit. |
Examples
The following example demonstrates the IsSurrogate method.
using namespace System;
int main()
{
// - escape params specifying Unicode not implemented in v7.0
Console::WriteLine( Char::IsSurrogate( 'a' ) ); // Output: "False"
}
using System;
public class IsSurrogateSample {
public static void Main() {
string str = "\U00010F00"; // Unicode values between 0x10000 and 0x10FFF are represented by two 16-bit "surrogate" characters
Console.WriteLine(Char.IsSurrogate('a')); // Output: "False"
Console.WriteLine(Char.IsSurrogate(str, 0)); // Output: "True"
}
}
open System
let str = "\U00010F00" // Unicode values between 0x10000 and 0x10FFF are represented by two 16-bit "surrogate" characters
printfn $"{Char.IsSurrogate 'a'}" // Output: "False"
printfn $"{Char.IsSurrogate(str, 0)}" // Output: "True"
Module IsSurrogateSample
Sub Main()
' NOTE: Visual Basic doesn't give us a way to create a 32-bit Unicode
' character composed of two 16-bit surrogate values, so a case where
' IsSurrogate returns True cannot be included in this sample.
Console.WriteLine(Char.IsSurrogate("a"c)) ' Output: "False"
End Sub
End Module
IsSurrogate(String, Int32)
- Source:
- Char.cs
- Source:
- Char.cs
- Source:
- Char.cs
Indicates whether the character at the specified position in a specified string has a surrogate code unit.
public:
static bool IsSurrogate(System::String ^ s, int index);
public static bool IsSurrogate (string s, int index);
static member IsSurrogate : string * int -> bool
Public Shared Function IsSurrogate (s As String, index As Integer) As Boolean
Parameters
- s
- String
A string.
- index
- Int32
The position of the character to evaluate in s
.
Returns
true
if the character at position index
in s
is a either a high surrogate or a low surrogate; otherwise, false
.
Exceptions
s
is null
.
index
is less than zero or greater than the last position in s
.
Remarks
Character positions in a string are indexed starting from zero.
A surrogate is a Char object with a UTF-16 code unit in the range from U+D800 to U+DFFF. Each character with a code unit in this range belongs to the UnicodeCategory.Surrogate category. The individual surrogate code unit has no interpretation of its own, but has meaning only when used as part of a surrogate pair. For more information about surrogate pairs, see the Unicode Standard at the Unicode home page.
See also
Applies to
IsSurrogate(Char)
- Source:
- Char.cs
- Source:
- Char.cs
- Source:
- Char.cs
Indicates whether the specified character has a surrogate code unit.
public:
static bool IsSurrogate(char c);
public static bool IsSurrogate (char c);
static member IsSurrogate : char -> bool
Public Shared Function IsSurrogate (c As Char) As Boolean
Parameters
- c
- Char
The Unicode character to evaluate.
Returns
true
if c
is either a high surrogate or a low surrogate; otherwise, false
.
Remarks
A surrogate is a Char object with a UTF-16 code unit in the range from U+D800 to U+DFFF. Each character with a code unit in this range belongs to the UnicodeCategory.Surrogate category. The individual surrogate code unit has no interpretation of its own, but has meaning only when used as part of a surrogate pair. For more information about surrogate pairs, see the Unicode Standard at the Unicode home page.