C#基本

[C#] 文字がサロゲートペア文字かどうか判定する(Char.IsSurrogate)

文字がサロゲート文字かどうか判定するには、Char.IsSurrogate() を使用します。

サンプル

例)文字列にサロゲート文字が含まれるかどうか判定する


// 対象文字
string str = "\ud842\udf9fる";  //←サロゲート文字です。

// サロゲート文字か含まれるかどうか判定する
bool b = false;
foreach(char c in str)
{
  if (b = Char.IsSurrogate(c))
  {
    break;
  }
}

// 結果
if (b == true){
  Console.WriteLine("サロゲート文字が含まれます");
}
else
{
  Console.WriteLine("サロゲート文字は含まれません");
}

結果

サロゲート文字が含まれます

備考

  • 文字がサロゲート文字かどうか判定するには、System.Char.IsSurrogateを使うと簡単です。

関連記事

-C#基本
-