Char.IsNumber Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Indica se un carattere Unicode è stato categorizzato come numero.
Overload
IsNumber(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una determinata stringa è stato categorizzato come numero. |
IsNumber(Char) |
Indica se il carattere Unicode specificato è stato categorizzato come numero. |
IsNumber(String, Int32)
Indica se il carattere in corrispondenza della posizione specificata in una determinata stringa è stato categorizzato come numero.
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
Parametri
- s
- String
Stringa.
- index
- Int32
Posizione del carattere da valutare in s
.
Restituisce
true
se il carattere alla posizione index
in s
è un numero; in caso contrario, false
.
Eccezioni
s
è null
.
index
è minore di zero o maggiore dell'ultima posizione in s
.
Esempio
Nell'esempio seguente viene illustrato 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"
}
}
open System
let str = "non-numeric"
printfn $"{Char.IsNumber '8'}" // Output: "True"
printfn $"{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
Commenti
Questo metodo determina se un Char è di qualsiasi categoria Unicode numerica. Oltre a includere cifre, i numeri includono caratteri, frazioni, pedici, apici, numeri romani, numeratori di valuta e numeri accerchiati. Questo metodo è in contrasto con il metodo , che determina se un oggetto è IsDigit Char una cifra di 10 radianti.
Le posizioni dei caratteri in una stringa vengono indicizzate a partire da zero.
Importante
Il metodo non ha lo scopo di determinare se una stringa è costituita da caratteri numerici, ad esempio chiamando il metodo IsNumber(String, Int32) per ogni carattere di una stringa. Per determinare se una stringa è costituita da caratteri numerici, chiamare uno degli overload del metodo , ad esempio o di un TryParse
Int32.TryParse tipo Double.TryParse integrale o a virgola mobile.
I numeri validi sono membri della UnicodeCategory.DecimalDigitNumber UnicodeCategory.LetterNumber categoria , o UnicodeCategory.OtherNumber .
Se l'oggetto nella posizione è il primo carattere di una coppia di surrogati valida, il metodo determina se la coppia Char index
di IsNumber(String, Int32) surrogati forma una cifra numerica. Ad esempio, il sistema di numerazione Egea è costituito da punti di codice da U+10107 a U+10133. Nell'esempio seguente viene ConvertFromUtf32 utilizzato il metodo per creare un'istanza di una stringa che rappresenta AEGEAN NUMBER ONE. Come illustrato nell'output dell'esempio, il metodo restituisce se viene passato il surrogato alto IsNumber(String, Int32) true
di AEGEAN NUMBER ONE. Tuttavia, se viene passato il surrogato basso, considera solo la categoria del surrogato basso e restituisce 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
let utf32 = 0x10107 // AEGEAN NUMBER ONE
let surrogate = Char.ConvertFromUtf32 utf32
for i = 0 to surrogate.Length - 1 do
printfn $"U+{Convert.ToUInt16 surrogate[i]:X4} at position {i}: {Char.IsNumber(surrogate, i)}"
// 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
Vedi anche
Si applica a
IsNumber(Char)
Indica se il carattere Unicode specificato è stato categorizzato come numero.
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
Parametri
- c
- Char
Carattere Unicode da valutare.
Restituisce
true
se c
è un numero; in caso contrario, false
.
Esempio
Nell'esempio seguente viene illustrato 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"
}
}
open System
let str = "non-numeric"
printfn $"{Char.IsNumber '8'}" // Output: "True"
printfn $"{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
Commenti
Questo metodo determina se un Char è di qualsiasi categoria Unicode numerica. Oltre a includere cifre, i numeri includono caratteri, frazioni, pedici, apici, numerali romani, numeratori di valuta e numeri accerchiati. Questo metodo è in contrasto con il metodo , che determina se un oggetto è IsDigit una cifra di base Char 10.
Importante
Il metodo non ha lo scopo di determinare se una stringa è costituita da caratteri numerici, ad esempio chiamando il metodo IsNumber(Char) per ogni carattere di una stringa. Per determinare se una stringa è costituita da caratteri numerici, chiamare uno degli overload del metodo , ad esempio o di un tipo integrale o TryParse
Int32.TryParse a Double.TryParse virgola mobile.
I numeri validi sono membri UnicodeCategory.DecimalDigitNumber della categoria , o UnicodeCategory.LetterNumber UnicodeCategory.OtherNumber .
Il IsNumber(Char) metodo presuppone che corrisponda a un singolo carattere c
linguistico e controlla se tale carattere rappresenta un numero. Tuttavia, alcuni numeri nello standard Unicode sono rappresentati da due Char oggetti che formano una coppia di surrogati. Ad esempio, il sistema di numerazione Egeo è costituito da punti di codice da U+10107 a U+10133. Nell'esempio seguente viene utilizzato ConvertFromUtf32 il metodo per creare un'istanza di una stringa che rappresenta AEGEAN NUMBER ONE. Come illustrato nell'output dell'esempio, il metodo restituisce se viene passato un surrogato alto o un IsNumber(Char) false
surrogato basso di questo carattere.
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
let utf32 = 0x10107 // AEGEAN NUMBER ONE
let surrogate = Char.ConvertFromUtf32 utf32
for ch in surrogate do
printfn $"U+{Convert.ToUInt16 ch:X4}: {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