Char.IsControl 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指示指定的 Unicode 字符是否属于控制字符类别。
重载
IsControl(Char) |
指示指定的 Unicode 字符是否属于控制字符类别。 |
IsControl(String, Int32) |
指示指定字符串中位于指定位置处的字符是否属于控制字符类别。 |
注解
控制字符是格式设置和其他非打印字符,如 ACK、BELOW、CR、FF、LF 和 VT。 Unicode 标准将从 \U0000 到 \U001F、\U007F 和从 \U0080 到 \U009F 的代码点分配给控制字符。 根据 Unicode 标准,这些值将被解释为控制字符,除非应用程序使用它们。 有效控制字符是类别的成员 UnicodeCategory.Control 。
IsControl(Char)
指示指定的 Unicode 字符是否属于控制字符类别。
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
参数
- c
- Char
要计算的 Unicode 字符。
返回
如果 true
是控制字符,则为 c
;否则为 false
。
示例
下面的示例列出了每个控制字符的 Unicode 码位。
using namespace System;
void main()
{
int charsWritten = 0;
for (int ctr = 0x00; ctr <= 0xFFFF; ctr++)
{
wchar_t ch = ctr;
if (Char::IsControl(ch))
{
Console::Write(L"\U{0:X4} ", ctr);
charsWritten++;
if (charsWritten % 6 == 0)
Console::WriteLine();
}
}
}
// The example displays the following output:
// 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
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
适用于
IsControl(String, Int32)
指示指定字符串中位于指定位置处的字符是否属于控制字符类别。
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
参数
- s
- String
一个字符串。
- index
- Int32
s
中要计算的字符的位置。
返回
如果 true
中位于 index
的字符是一个控制字符,则为 s
;否则为 false
。
例外
s
上声明的默认值为 null
。
index
小于零或大于 s
中最后一个位置。
示例
下面的示例对字符串中的字符进行枚举,并确定是否有任何控件字符。
using namespace System;
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:
// Control character \U000D found in position 10.
// Control character \U000A found in position 11.
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.