কম্পিউটার টিউটোরিয়াল

C#-এ ক্যারেক্টার সারোগেট কোড আছে কিনা চেক করা

Char.IsSurrogate(string, int index) মেথড ব্যবহার করে একটি স্ট্রিংয়ের নির্দিষ্ট পজিশনের ক্যারেক্টারটি সারোগেট কোড ইউনিট (UTF-16 সারোগেট পেয়ার) কিনা চেক করা যায়।

উদাহরণ ১: সারোগেট কোড আছে

using System;

public class Demo {
    public static void Main() {
        string str = new String(new char[] { 'k', 'm', 'g', 't', '\uD800' });
        bool res = Char.IsSurrogate(str, 4);
        if (res)
            Console.WriteLine("Contains Surrogate value!");
        else
            Console.WriteLine("Does not contain Surrogate value!");
    }
}

আউটপুট

Contains Surrogate value!

উদাহরণ ২: সারোগেট কোড নেই

using System;

public class Demo {
    public static void Main() {
        string str = new String(new char[] { 'k', 'm', 'g', 't', 'w' });
        bool res = Char.IsSurrogate(str, 4);
        if (res)
            Console.WriteLine("Contains Surrogate value!");
        else
            Console.WriteLine("Does not contain Surrogate value!");
    }
}

আউটপুট

Does not contain Surrogate value!

ব্যাখ্যা

  • UTF-16-এ কিছু ক্যারেক্টার (ইমোজি, রেয়ার ক্যারেক্টার) ২টি ১৬-বিট কোড ইউনিট দিয়ে রিপ্রেজেন্ট করা হয় — এগুলোকে সারোগেট পেয়ার বলে।
  • \uD800 হাই সারোগেট রেঞ্জের শুরু।
  • Char.IsSurrogate হাই বা লো সারোগেট দুটোই ডিটেক্ট করে।
  • সম্পূর্ণ সারোগেট পেয়ার চেক করতে Char.IsSurrogatePair ব্যবহার করুন।
  1. C#-এ HashSet-এ সাবসেট যাচাই করা (IsSubsetOf মেথড)

  2. C#-এ HashSet-তে নির্দিষ্ট উপাদান রয়েছে কিনা তা যাচাই করুন

  3. C#-এ আর্মস্ট্রং নম্বর চেক করা

  4. Python-এ স্ট্রিং-এর এভারেজ ক্যারেক্টার উপস্থিত আছে কিনা যাচাই করা