جا به جا کردن تمام کاراکترهای درون رشته با دیکشنری سی شارپ #C

کد با پلتفرم بوی - کد سی شارپ
کد با پلتفرم بوی – کد سی شارپ

تعویض کاراکترهای درون یک رشته با Dictionary سی شارپ

فزض کنید بخواهیم برای هر کاراکتر در یک رشته متن یک حرف یا عدد دیگری در نظر بگیریم. مثلا :

(“a”, “23”)
(“A”, “95”)
(“d”, “12”)
(“D”, “69”)

مقدارهایی باشد که از پیش تعیین کرده باشیم.و در صورت وارد کردن یک string با مقدار Dad به ما خروجی ۶۹۲۳۱۲ را بدهد.

روش اول

پلتفرم بوی اجرا شدن خروجی صحیح قطعه کد زیر را تایید می کند

قطعه کدی که در زیر مشاهده می کنید توسط برنامه کامپایلر به جهت تست آزمایش شده و خروجی صحیح مدنظر را بدست آورد.

Dictionary<char, string> keys = new Dictionary<char, string>();
keys.Add("a", "23");
keys.Add("A", "95");
keys.Add("d", "12");
keys.Add("D", "69");

روش دوم

Dictionary<char, string> keys = new Dictionary<char, string>() {
  {'a', "23"},
  {'A', "95"},
  {'d', "12"},
  {'D', "69"},    
};

string result = string.Concat(text.Select(c => keys[c]));

روش سوم

Dictionary<string, char> decode = keys
  .ToDictionary(pair => pair.Value, pair => pair.Key);

int fixedSize = decode.First().Key.Length;

string decoded = string.Concat(Enumerable
  .Range(0, result.Length / fixedSize)
  .Select(i => decode[result.Substring(i * fixedSize, fixedSize)]));

 

کدهای بیشتر - سی شارپ

آیا این مطلب برای شما مفید بود؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *