IsSurrogate Method (Char)
Collapse the table of content
Expand the table of content

Char.IsSurrogate Method (Char)


Indicates whether the specified character has a surrogate code unit.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

public static bool IsSurrogate(
	char c


Type: System.Char

The Unicode character to evaluate.

Return Value

Type: System.Boolean

true if c is either a high surrogate or a low surrogate; otherwise, false.

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.

The following example demonstrates the IsSurrogate method.

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"

Universal Windows Platform
Available since 4.5
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
© 2015 Microsoft