Char.IsNumber Método

Definição

Indica se um caractere Unicode é categorizado como um número.Indicates whether a Unicode character is categorized as a number.

Sobrecargas

IsNumber(Char)

Indica se o caractere Unicode especificado é categorizado como um número.Indicates whether the specified Unicode character is categorized as a number.

IsNumber(String, Int32)

Indica se o caractere na posição especificada em uma cadeia de caracteres especificada é categorizado como um número.Indicates whether the character at the specified position in a specified string is categorized as a number.

IsNumber(Char)

Indica se o caractere Unicode especificado é categorizado como um número.Indicates whether the specified Unicode character is categorized as a number.

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

Parâmetros

c
Char

O caractere Unicode a ser avaliado.The Unicode character to evaluate.

Retornos

true se c for um número; caso contrário, false.true if c is a number; otherwise, false.

Exemplos

O exemplo a seguir demonstra IsNumber.The following example demonstrates IsNumber.

using namespace System;
int main()
{
   String^ str =  "non-numeric";
   Console::WriteLine( Char::IsNumber( '8' ) ); // Output: "True"
   Console::WriteLine( Char::IsNumber( str, 3 ) ); // Output: "False"
}

using System;

public class IsNumberSample {
    public static void Main() {
        string str = "non-numeric";

        Console.WriteLine(Char.IsNumber('8'));		// Output: "True"
        Console.WriteLine(Char.IsNumber(str, 3));	// Output: "False"
    }
}
Module IsNumberSample
    Sub Main()
        Dim str As String
        str = "non-numeric"

        Console.WriteLine(Char.IsNumber("8"c))      ' Output: "True"
        Console.WriteLine(Char.IsNumber(str, 3))    ' Output: "False"
    End Sub
End Module

Comentários

Esse método determina se um Char é de qualquer categoria Unicode numérica.This method determines whether a Char is of any numeric Unicode category. Além de incluir dígitos, os números incluem caracteres, frações, subscritos, sobrescritos, numerais romanos, numeradores de moedas e números encírculos.In addition to including digits, numbers include characters, fractions, subscripts, superscripts, Roman numerals, currency numerators, and encircled numbers. Esse método contrasta com o método IsDigit, que determina se um Char é um dígito fracionário-10.This method contrasts with the IsDigit method, which determines whether a Char is a radix-10 digit.

Importante

O método IsNumber(Char) não se destina a determinar se uma cadeia de caracteres consiste em caracteres numéricos (por exemplo, chamando o método para cada caractere em uma cadeia de caracteres).The IsNumber(Char) method is not intended to determine whether a string consists of numeric characters (for example, by calling the method for each character in a string). Para determinar se uma cadeia consiste em caracteres numéricos, chame uma das sobrecargas do método TryParse (como Int32.TryParse ou Double.TryParse de um tipo integral ou de ponto flutuante.To determine whether a string consists of numeric characters, call one of the overloads of the TryParse method (such as Int32.TryParse or Double.TryParse of an integral or floating point type.

Os números válidos são membros da categoria UnicodeCategory.DecimalDigitNumber, UnicodeCategory.LetterNumberou UnicodeCategory.OtherNumber.Valid numbers are members of the UnicodeCategory.DecimalDigitNumber, UnicodeCategory.LetterNumber, or UnicodeCategory.OtherNumber category.

O método IsNumber(Char) pressupõe que c corresponde a um único caractere linguístico e verifica se esse caractere representa um número.The IsNumber(Char) method assumes that c corresponds to a single linguistic character and checks whether that character represents a number. No entanto, alguns números no padrão Unicode são representados por dois objetos Char que formam um par alternativo.However, some numbers in the Unicode standard are represented by two Char objects that form a surrogate pair. Por exemplo, o sistema de numeração Aegean consiste em pontos de código de U+10107 a U+10133.For example, the Aegean numbering system consists of code points U+10107 through U+10133. O exemplo a seguir usa o método ConvertFromUtf32 para instanciar uma cadeia de caracteres que representa AEGEAN NUMBER ONE.The following example uses the ConvertFromUtf32 method to instantiate a string that represents AEGEAN NUMBER ONE. Como a saída do exemplo mostra, o método IsNumber(Char) retorna false se ele for passado como um substituto alto ou um baixo substituto desse caractere.As the output from the example shows, the IsNumber(Char) method returns false if it is passed either a high surrogate or a low surrogate of this character.

int utf32 = 0x10107;      // AEGEAN NUMBER ONE
string surrogate = Char.ConvertFromUtf32(utf32);
foreach (var ch in surrogate)
   Console.WriteLine("U+{0:X4}: {1}", Convert.ToUInt16(ch), 
                                    Char.IsNumber(ch));

// The example displays the following output:
//       U+D800: False
//       U+DD07: False       
Dim utf32 As Integer = &h10107      ' AEGEAN NUMBER ONE
Dim surrogate As String = Char.ConvertFromUtf32(utf32)
For Each ch In surrogate
   Console.WriteLine("U+{0:X4}: {1}", Convert.ToUInt16(ch), 
                                    Char.IsNumber(ch))
Next
' The example displays the following output:
'       U+D800: False
'       U+DD07: False

Veja também

IsNumber(String, Int32)

Indica se o caractere na posição especificada em uma cadeia de caracteres especificada é categorizado como um número.Indicates whether the character at the specified position in a specified string is categorized as a number.

public:
 static bool IsNumber(System::String ^ s, int index);
public static bool IsNumber (string s, int index);
static member IsNumber : string * int -> bool
Public Shared Function IsNumber (s As String, index As Integer) As Boolean

Parâmetros

s
String

Uma cadeia de caracteres.A string.

index
Int32

A posição do caractere a ser avaliada em s.The position of the character to evaluate in s.

Retornos

true se o caractere na posição index no s for um número; caso contrário, false.true if the character at position index in s is a number; otherwise, false.

Exceções

s é null.s is null.

index é menor que zero ou maior que a última posição em s.index is less than zero or greater than the last position in s.

Exemplos

O exemplo a seguir demonstra IsNumber.The following example demonstrates IsNumber.

using namespace System;
int main()
{
   String^ str =  "non-numeric";
   Console::WriteLine( Char::IsNumber( '8' ) ); // Output: "True"
   Console::WriteLine( Char::IsNumber( str, 3 ) ); // Output: "False"
}

using System;

public class IsNumberSample {
    public static void Main() {
        string str = "non-numeric";

        Console.WriteLine(Char.IsNumber('8'));		// Output: "True"
        Console.WriteLine(Char.IsNumber(str, 3));	// Output: "False"
    }
}
Module IsNumberSample
    Sub Main()
        Dim str As String
        str = "non-numeric"

        Console.WriteLine(Char.IsNumber("8"c))      ' Output: "True"
        Console.WriteLine(Char.IsNumber(str, 3))    ' Output: "False"
    End Sub
End Module

Comentários

Esse método determina se um Char é de qualquer categoria Unicode numérica.This method determines whether a Char is of any numeric Unicode category. Além de incluir dígitos, os números incluem caracteres, frações, subscritos, sobrescritos, numerais romanos, numeradores de moedas e números encírculos.In addition to including digits, numbers include characters, fractions, subscripts, superscripts, Roman numerals, currency numerators, and encircled numbers. Esse método contrasta com o método IsDigit, que determina se um Char é um dígito fracionário-10.This method contrasts with the IsDigit method, which determines whether a Char is a radix-10 digit.

As posições de caractere em uma cadeia de caracteres são indexadas a partir de zero.Character positions in a string are indexed starting from zero.

Importante

O método IsNumber(String, Int32) não se destina a determinar se uma cadeia de caracteres consiste em caracteres numéricos (por exemplo, chamando o método para cada caractere em uma cadeia de caracteres).The IsNumber(String, Int32) method is not intended to determine whether a string consists of numeric characters (for example, by calling the method for each character in a string). Para determinar se uma cadeia consiste em caracteres numéricos, chame uma das sobrecargas do método TryParse (como Int32.TryParse ou Double.TryParse de um tipo integral ou de ponto flutuante.To determine whether a string consists of numeric characters, call one of the overloads of the TryParse method (such as Int32.TryParse or Double.TryParse of an integral or floating point type.

Os números válidos são membros da categoria UnicodeCategory.DecimalDigitNumber, UnicodeCategory.LetterNumberou UnicodeCategory.OtherNumber.Valid numbers are members of the UnicodeCategory.DecimalDigitNumber, UnicodeCategory.LetterNumber, or UnicodeCategory.OtherNumber category.

Se o objeto Char na posição index for o primeiro caractere de um par substituto válido, o método IsNumber(String, Int32) determinará se o par substituto forma um dígito numérico.If the Char object at position index is the first character of a valid surrogate pair, the IsNumber(String, Int32) method determines whether the surrogate pair forms a numeric digit. Por exemplo, o sistema de numeração Aegean consiste em pontos de código de U+10107 a U+10133.For example, the Aegean numbering system consists of code points U+10107 through U+10133. O exemplo a seguir usa o método ConvertFromUtf32 para instanciar uma cadeia de caracteres que representa AEGEAN NUMBER ONE.The following example uses the ConvertFromUtf32 method to instantiate a string that represents AEGEAN NUMBER ONE. Como a saída do exemplo mostra, o método IsNumber(String, Int32) retorna true se for passado o substituto alto do AEGEAN número um.As the output from the example shows, the IsNumber(String, Int32) method returns true if it is passed the high surrogate of AEGEAN NUMBER ONE. No entanto, se for passado o substituto baixo, ele considerará apenas a categoria do substituto baixo e retornará false.However, if it is passed the low surrogate, it considers only the category of the low surrogate and returns false.

int utf32 = 0x10107;      // AEGEAN NUMBER ONE
string surrogate = Char.ConvertFromUtf32(utf32);
for (int ctr = 0; ctr < surrogate.Length; ctr++)
   Console.WriteLine("U+{0:X4} at position {1}: {2}", 
                     Convert.ToUInt16(surrogate[ctr]), ctr,  
                     Char.IsNumber(surrogate, ctr));
// The example displays the following output:
//       U+D800 at position 0: True
//       U+DD07 at position 1: False
Dim utf32 As Integer = &h10107      ' AEGEAN NUMBER ONE
Dim surrogate As String = Char.ConvertFromUtf32(utf32)
For ctr As Integer = 0 To surrogate.Length - 1
   Console.WriteLine("U+{0:X4} at position {1}: {2}", 
                     Convert.ToUInt16(surrogate(ctr)), ctr,  
                     Char.IsNumber(surrogate, ctr))
Next
' The example displays the following output:
'       U+D800 at position 0: True
'       U+DD07 at position 1: False

Veja também

Aplica-se a