C#-এ একটি string হলো এমন একটি অবজেক্ট, যা ইউনিকোড ক্যারেক্টারের (অক্ষর, সংখ্যা, যতিচিহ্ন ইত্যাদি) একটি ক্রম হিসেবে অপরিবর্তনীয় টেক্সট প্রকাশ করে। একটি string ইনস্ট্যান্স ডিফাইন করতে ডাবল কোট ব্যবহার করা হয়:
string fruit = "Apple";
স্ট্রিংয়ের বিল্ট-ইন মেথড কল করে স্ট্রিং নিয়ে কাজ করা হয়। উদাহরণস্বরূপ, একটি স্ট্রিং থেকে হোয়াইটস্পেস সরাতে আপনি এভাবে Trim মেথড ব্যবহার করতে পারেন:
string name = " Jane "
name.Trim()
// => "Jane"
একবার একটি স্ট্রিং তৈরি হয়ে গেলে তার মান আর কখনো বদলানো যায় না। যে মেথডগুলো স্ট্রিং পরিবর্তন করে বলে মনে হয়, তারা আসলে একটি নতুন স্ট্রিং রিটার্ন করে।
একাধিক স্ট্রিং একসাথে কনক্যাটেনেট (যোগ) করা যায়। এটি করার সবচেয়ে সহজ উপায় হলো + অপারেটর ব্যবহার করা।
string name = "Jane";
"Hello " + name + "!";
// => "Hello Jane!"
সাধারণ কনক্যাটেনেশনের চেয়ে জটিল যেকোনো স্ট্রিং ফরম্যাটিংয়ের জন্য স্ট্রিং ইন্টারপোলেশন বেশি পছন্দনীয়। একটি স্ট্রিংয়ে ইন্টারপোলেশন ব্যবহার করতে তার শুরুতে ডলার ($) চিহ্ন বসান। তারপর আপনার স্ট্রিংয়ের ভেতরের যেকোনো ভ্যারিয়েবল অ্যাক্সেস করতে আপনি দ্বিতীয় বন্ধনী ({}) ব্যবহার করতে পারেন।
string name = "Jane";
$"Hello {name}!";
// => "Hello Jane!"
এই অনুশীলনীতে আপনি লগ লাইন প্রসেস করবেন।
প্রতিটি লগ লাইন নিচের মতো ফরম্যাট করা একটি স্ট্রিং: "[<LEVEL>]: <MESSAGE>".
তিনটি আলাদা লগ লেভেল আছে:
INFOWARNINGERRORআপনার তিনটি কাজ আছে; প্রতিটি কাজে একটি লগ লাইন পাবেন এবং সেটি দিয়ে কিছু করতে হবে।
লগ লাইনের মেসেজ রিটার্ন করার জন্য (static) LogLine.Message() মেথডটি ইমপ্লিমেন্ট করুন:
LogLine.Message("[ERROR]: Invalid operation")
// => "Invalid operation"
শুরুতে বা শেষে থাকা যেকোনো হোয়াইট স্পেস মুছে ফেলতে হবে:
LogLine.Message("[WARNING]: Disk almost full\r\n")
// => "Disk almost full"
লগ লাইনের লগ লেভেল রিটার্ন করার জন্য (static) LogLine.LogLevel() মেথডটি ইমপ্লিমেন্ট করুন; লগ লেভেলটি ছোট হাতের অক্ষরে রিটার্ন করতে হবে:
LogLine.LogLevel("[ERROR]: Invalid operation")
// => "error"
লগ লাইনটি রিফরম্যাট করার জন্য (static) LogLine.Reformat() মেথডটি ইমপ্লিমেন্ট করুন, যেখানে মেসেজটি আগে থাকে এবং তার পরে বন্ধনীর মধ্যে লগ লেভেলটি থাকে:
LogLine.Reformat("[INFO]: Operation completed")
// => "Operation completed (info)"
Exercism-এ সাইন আপ করুন, C# ট্র্যাকের 62টি কনসেপ্ট178টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।