Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

Char.IsControl Method

Definition

Namespace:
System
Assemblies:
mscorlib.dll, System.Runtime.dll
Assemblies:
netstandard.dll, System.Runtime.dll
Assembly:
System.Runtime.dll
Assembly:
mscorlib.dll
Assembly:
netstandard.dll

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 specified Unicode character is categorized as a control character.

Overloads

Name Description
IsControl(Char)

Indicates whether the specified Unicode character is categorized as a control character.

IsControl(String, Int32)

Indicates whether the character at the specified position in a specified string is categorized as a control character.

Remarks

Control characters are formatting and other non-printing characters, such as ACK, BEL, CR, FF, LF, and VT. The Unicode standard assigns code points from \U0000 to \U001F, \U007F, and from \U0080 to \U009F to control characters. According to the Unicode standard, these values are to be interpreted as control characters unless their use is otherwise defined by an application. Valid control characters are members of the UnicodeCategory.Control category.

IsControl(Char)

Source:
Char.cs
Source:
Char.cs
Source:
Char.cs
Source:
Char.cs
Source:
Char.cs

Indicates whether the specified Unicode character is categorized as a control character.

public:
 static bool IsControl(char c);
public static bool IsControl(char c);
static member IsControl : char -> bool
Public Shared Function IsControl (c As Char) As Boolean

Parameters

c
Char

The Unicode character to evaluate.

Returns

true if c is a control character; otherwise, false.

Examples

The following example lists the Unicode code point of each of the control characters.

using System;

public class ControlChars
{
 public static void Main()
 {
 int charsWritten = 0;

 for (int ctr = 0x00; ctr <= 0xFFFF; ctr++)
 {
 char ch = Convert.ToChar(ctr);
 if (char.IsControl(ch))
 {
 Console.Write(@"\U{0:X4} ", ctr);
 charsWritten++;
 if (charsWritten % 6 == 0)
 Console.WriteLine();
 }
 }
 }
}
// The example displays the following output to the console:
// \U0000 \U0001 \U0002 \U0003 \U0004 \U0005
// \U0006 \U0007 \U0008 \U0009 \U000A \U000B
// \U000C \U000D \U000E \U000F \U0010 \U0011
// \U0012 \U0013 \U0014 \U0015 \U0016 \U0017
// \U0018 \U0019 \U001A \U001B \U001C \U001D
// \U001E \U001F \U007F \U0080 \U0081 \U0082
// \U0083 \U0084 \U0085 \U0086 \U0087 \U0088
// \U0089 \U008A \U008B \U008C \U008D \U008E
// \U008F \U0090 \U0091 \U0092 \U0093 \U0094
// \U0095 \U0096 \U0097 \U0098 \U0099 \U009A
// \U009B \U009C \U009D \U009E \U009F
open System

let mutable charsWritten = 0

for i in 0x00..0xFFFF do
 let ch = Convert.ToChar i
 if Char.IsControl ch then
 printf $"\\U{i:X4} "
 charsWritten <- charsWritten + 1
 if charsWritten % 6 = 0 then
 printfn ""

// The example displays the following output to the console:
// \U0000 \U0001 \U0002 \U0003 \U0004 \U0005
// \U0006 \U0007 \U0008 \U0009 \U000A \U000B
// \U000C \U000D \U000E \U000F \U0010 \U0011
// \U0012 \U0013 \U0014 \U0015 \U0016 \U0017
// \U0018 \U0019 \U001A \U001B \U001C \U001D
// \U001E \U001F \U007F \U0080 \U0081 \U0082
// \U0083 \U0084 \U0085 \U0086 \U0087 \U0088
// \U0089 \U008A \U008B \U008C \U008D \U008E
// \U008F \U0090 \U0091 \U0092 \U0093 \U0094
// \U0095 \U0096 \U0097 \U0098 \U0099 \U009A
// \U009B \U009C \U009D \U009E \U009F
Module ControlChars
 Public Sub Main()
 Dim charsWritten As Integer = 0

 For ctr As Integer = &H0 To &HFFFF
 Dim ch As Char = Convert.ToChar(ctr)
 
 If Char.IsControl(ch) Then
 Console.Write("\U{0:X4} ", ctr)
 charsWritten += 1 
 If (charsWritten Mod 6) = 0 Then 
 Console.WriteLine()
 End If 
 End If
 Next
 End Sub
End Module
' The example displays the following output to the console:
' \U0000 \U0001 \U0002 \U0003 \U0004 \U0005
' \U0006 \U0007 \U0008 \U0009 \U000A \U000B
' \U000C \U000D \U000E \U000F \U0010 \U0011
' \U0012 \U0013 \U0014 \U0015 \U0016 \U0017
' \U0018 \U0019 \U001A \U001B \U001C \U001D
' \U001E \U001F \U007F \U0080 \U0081 \U0082
' \U0083 \U0084 \U0085 \U0086 \U0087 \U0088
' \U0089 \U008A \U008B \U008C \U008D \U008E
' \U008F \U0090 \U0091 \U0092 \U0093 \U0094
' \U0095 \U0096 \U0097 \U0098 \U0099 \U009A
' \U009B \U009C \U009D \U009E \U009F

Applies to

IsControl(String, Int32)

Source:
Char.cs
Source:
Char.cs
Source:
Char.cs
Source:
Char.cs
Source:
Char.cs

Indicates whether the character at the specified position in a specified string is categorized as a control character.

public:
 static bool IsControl(System::String ^ s, int index);
public static bool IsControl(string s, int index);
static member IsControl : string * int -> bool
Public Shared Function IsControl (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 control character; otherwise, false.

Exceptions

index is less than zero or greater than the last position in s.

Examples

The following example enumerates the characters in a string and determines whether any are control characters.

using System;

public class ControlChar
{
 public static void Main()
 {
 string sentence = "This is a " + Environment.NewLine + "two-line sentence.";
 for (int ctr = 0; ctr < sentence.Length; ctr++)
 {
 if (Char.IsControl(sentence, ctr))
 Console.WriteLine("Control character \\U{0} found in position {1}.",
 Convert.ToInt32(sentence[ctr]).ToString("X4"), ctr);
 }
 }
}
// The example displays the following output to the console:
// Control character \U000D found in position 10.
// Control character \U000A found in position 11.
open System

let sentence = "This is a " + Environment.NewLine + "two-line sentence."

for i = 0 to sentence.Length - 1 do
 if Char.IsControl(sentence, i) then
 printfn $"Control character \\U{Convert.ToInt32 sentence[i]:X4} found in position {i}."

// The example displays the following output to the console:
// Control character \U000D found in position 10.
// Control character \U000A found in position 11.
Module ControlChar
 Public Sub Main()
 Dim sentence As String = "This is a " & vbCrLf & "two-line sentence."
 For ctr As Integer = 0 to sentence.Length - 1
 If Char.IsControl(sentence, ctr) Then
 Console.WriteLine("Control character \U{0} found in position {1}.", _
 Convert.ToInt32(sentence.Chars(ctr)).ToString("X4"), ctr)
 End If
 Next 
 End Sub
End Module
' The example displays the following output to the console:
' Control character \U000D found in position 10.
' Control character \U000A found in position 11.

Applies to


Feedback

Was this page helpful?