C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のChar.IsSymbol()メソッドとは?文字が記号かどうかを判定する方法を解説

Char.IsSymbol()メソッドとは

C#のChar.IsSymbol()メソッドは、指定された文字列内の指定位置にある文字が、Unicodeの「記号(Symbol)」カテゴリに分類されているかどうかを判定するメソッドです。戻り値はbool型で、記号であればtrue、そうでなければfalseを返します。

判定対象となるのは、数学記号(+、=など)、通貨記号($、¥など)、修飾記号、その他の記号といったUnicode記号カテゴリに属する文字です。

構文

public static bool IsSymbol (string str, int index);

パラメータ

  • str:評価対象の文字列
  • index:str内で評価する文字の位置(インデックス)

戻り値

指定位置の文字が記号として分類される場合はtrue、それ以外はfalseを返します。

また、Char.IsSymbol()には、文字(char型)を直接渡すオーバーロードも用意されています。

public static bool IsSymbol (char c);

使用例1:char型の値を判定する

まずは、アルファベットの「P」が記号として判定されるかどうかを確認してみましょう。

using System;
public class Demo {
    public static void Main(){
        bool res;
        char val = 'P';
        Console.WriteLine("Value = "+val);
        res = Char.IsSymbol(val);
        Console.WriteLine("Is the value a symbol? = "+res);
    }
}

出力結果

Value = P
Is the value a symbol? = False

「P」は英字であり記号ではないため、結果はFalseとなります。

使用例2:記号を判定する

次に、「+」(プラス記号)を判定してみます。

using System;
public class Demo {
    public static void Main(){
        bool res;
        char val = '+';
        Console.WriteLine("Value = "+val);
        res = Char.IsSymbol(val);
        Console.WriteLine("Is the value a symbol? = "+res);
    }
}

出力結果

Value = +
Is the value a symbol? = True

「+」は数学記号に分類されるため、結果はTrueとなります。

まとめ

Char.IsSymbol()メソッドを使うことで、文字が記号かどうかを簡単に判定できます。入力値のバリデーションや、文字種別ごとの処理分岐などに活用できる便利なメソッドなので、ぜひ覚えておきましょう。

  1. C#のChar.IsWhiteSpace()メソッドとは?使い方とサンプルコードを解説

    C#のChar.IsWhiteSpace()メソッドは、指定されたUnicode文字が空白文字(ホワイトスペース)であるかどうかを判定し、その結果をbool値で返す静的メソッドです。空白文字には、半角スペースだけでなく、タブ(\t)、改行(\n)、復帰(\r)なども含まれます。文字列の前処理や入力値のバリデーションなどで活用できる便利なメソッドです。構文public static bool IsWhiteSpace (char ch);パラメータ ch には、評価対象となるUnicode文字を指定します。戻り値は、その文字が空白文字であれば true、そうでなければ false となります。C

  2. 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 {