C#のChar.IsLetterOrDigit()メソッドとは?文字が英字または数字か判定する方法
C#のChar.IsLetterOrDigit()メソッドは、指定されたUnicode文字が「英字(letter)」または「10進数の数字(decimal digit)」に分類されるかどうかを判定し、その結果をbool値(true / false)で返します。
文字列のバリデーションや入力チェックなど、文字種を確認したい場面でよく使われる便利なメソッドです。
構文
Char.IsLetterOrDigit()メソッドの構文は以下のとおりです。
public static bool IsLetterOrDigit (char ch);
引数のchには、判定対象となるUnicode文字を指定します。戻り値として、文字が英字または数字であればtrue、それ以外であればfalseが返されます。
使用例1:数字を判定する場合
まずは、数字の文字「'1'」を判定する例を見てみましょう。
using System;
public class Demo {
public static void Main(){
bool res;
char val = '1';
Console.WriteLine("Value = "+val);
res = Char.IsLetterOrDigit(val);
Console.WriteLine("Is the value a letter or digit? = "+res);
}
}出力結果
このコードを実行すると、以下のような出力が得られます。
Value = 1 Is the value a letter or digit? = True
文字「'1'」は10進数の数字に分類されるため、結果はTrueとなります。
使用例2:記号を判定する場合
次に、記号「'$'」を判定した場合の例です。
using System;
public class Demo {
public static void Main(){
bool res;
char val = '$';
Console.WriteLine("Value = "+val);
res = Char.IsLetterOrDigit(val);
Console.WriteLine("Is the value a letter or digit? = "+res);
}
}出力結果
実行すると、以下の出力になります。
Value = $ Is the value a letter or digit? = False
「'$'」は英字にも数字にも分類されないため、結果はFalseとなります。
まとめ
Char.IsLetterOrDigit()メソッドを使うことで、指定した1文字が英字または数字であるかどうかを簡単に判定できます。半角英数字のみを許可する入力チェックなどで活用できるので、ぜひ覚えておきましょう。
-
C#のChar.IsUpper()メソッドとは?大文字判定の使い方を解説
概要C#のChar.IsUpper()メソッドは、指定されたUnicode文字が「大文字」に分類されるかどうかを判定するメソッドです。判定結果はbool型で返され、文字が大文字であればtrue、それ以外であればfalseを返します。構文public static bool IsUpper(char ch);パラメータchには、判定対象となるUnicode文字を指定します。戻り値文字が大文字の場合:trueそれ以外の場合:false使用例1:大文字を判定する場合まずは、大文字「H」を判定するサンプルコードを見てみましょう。using System; public class Demo {
-
C#のChar.IsSymbol()メソッドとは?文字が記号かどうかを判定する方法を解説
Char.IsSymbol()メソッドとはC#のChar.IsSymbol()メソッドは、指定された文字列内の指定位置にある文字が、Unicodeの「記号(Symbol)」カテゴリに分類されているかどうかを判定するメソッドです。戻り値はbool型で、記号であればtrue、そうでなければfalseを返します。判定対象となるのは、数学記号(+、=など)、通貨記号($、¥など)、修飾記号、その他の記号といったUnicode記号カテゴリに属する文字です。構文public static bool IsSymbol (string str, int index);パラメータstr:評価対象の文字列inde