Char.IsNumber 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
指示 Unicode 字元是否分類為數字。
多載
IsNumber(String, Int32) |
指示指定的字串中指定位置處的字元是否分類為數字。 |
IsNumber(Char) |
指示指定的 Unicode 字元是否分類為數字。 |
IsNumber(String, Int32)
指示指定的字串中指定位置處的字元是否分類為數字。
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
參數
- s
- String
字串。
- index
- Int32
要評估的字元在 s
中的位置。
傳回
當 true
中位於 index
的字元是數字時為 s
,否則為 false
。
例外狀況
s
為 null
。
index
小於零或大於 s
中的最後一個位置。
範例
下列範例將示範 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
備註
這個方法會判斷是否 Char 為任何數值的 Unicode 類別。 除了包含數位,數位也包含字元、分數、注標、上標、羅馬數字、貨幣分子和 encircled 數位。 這個方法會與方法進行比較 IsDigit ,以判斷是否 Char 為10的10位數。
字串中的字元位置會從零開始編制索引。
重要
IsNumber(String, Int32)方法不是用來判斷字串是否由數位字元組成 (例如,藉由針對字串中的每個字元呼叫方法) 。 若要判斷字串是否由數位字元組成,請呼叫方法的其中一個多載 TryParse
(例如 Int32.TryParse 或 Double.TryParse 整數或浮點數類型的或。
有效的數位是 UnicodeCategory.DecimalDigitNumber 、 UnicodeCategory.LetterNumber 或 UnicodeCategory.OtherNumber 類別目錄的成員。
如果 Char 位於位置的物件 index
是有效代理組的第一個字元,則此 IsNumber(String, Int32) 方法會判斷代理組是否形成一個數位。 例如,希臘愛琴大學編號系統是由程式碼點 U + 10107 至 U + 10133 所組成。 下列範例 ConvertFromUtf32 會使用方法來具現化代表希臘愛琴大學數位1的字串。 如範例的輸出所示,如果將 IsNumber(String, Int32) true
希臘愛琴大學數位1的高代理傳遞給它,方法會傳回。 但是,如果將低代理傳遞給它,它只會考慮低代理的類別,並傳回 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
另請參閱
適用於
IsNumber(Char)
指示指定的 Unicode 字元是否分類為數字。
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
參數
- c
- Char
要評估的 Unicode 字元。
傳回
當 true
是數字時為 c
,否則為 false
。
範例
下列範例將示範 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
備註
這個方法會判斷是否 Char 為任何數值的 Unicode 類別。 除了包含數位,數位也包含字元、分數、注標、上標、羅馬數字、貨幣分子和 encircled 數位。 這個方法會與方法進行比較 IsDigit ,以判斷是否 Char 為10的10位數。
重要
IsNumber(Char)方法不是用來判斷字串是否由數位字元組成 (例如,藉由針對字串中的每個字元呼叫方法) 。 若要判斷字串是否由數位字元組成,請呼叫方法的其中一個多載 TryParse
(例如 Int32.TryParse 或 Double.TryParse 整數或浮點數類型的或。
有效的數位是 UnicodeCategory.DecimalDigitNumber 、 UnicodeCategory.LetterNumber 或 UnicodeCategory.OtherNumber 類別目錄的成員。
IsNumber(Char)方法會假設 c
對應至單一語言字元,並檢查該字元是否代表數位。 不過,Unicode 標準中的某些數位是由構成代理組的兩個物件所表示 Char 。 例如,希臘愛琴大學編號系統是由程式碼點 U + 10107 至 U + 10133 所組成。 下列範例 ConvertFromUtf32 會使用方法來具現化代表希臘愛琴大學數位1的字串。 如範例的輸出所示, IsNumber(Char) false
如果傳遞的是高代理或此字元的低代理,則方法會傳回。
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