উত্তর:
string mystr = string.Format("This is {0}overflow", strVar);
এবং আপনি সূচীর পরিবর্তে নামকরণকৃত প্যারামিটারগুলিও ব্যবহার করতে পারেন ।
এটি সি # 6.0 (ভিজ্যুয়াল স্টুডিও 2015+) হিসাবে যুক্ত করা হয়েছে।
উদাহরণ:
var planetName = "Bob";
var myName = "Ford";
var formattedStr = $"Hello planet {planetName}, my name is {myName}!";
// formattedStr should be "Hello planet Bob, my name is Ford!"
এটি সিনট্যাকটিক চিনি এর জন্য:
var formattedStr = String.Format("Hello planet {0}, my name is {1}!", planetName, myName);
অতিরিক্ত সম্পদ:
$("This feature is {GetDescription(FEATURE_AMAZING))}");
আপনি string.Format
মানগুলিকে স্ট্রিংয়ে ফেলে দিতে ব্যবহার করতে পারেন :
private static readonly string formatString = "This is {0}overflow";
...
var strVar = "stack";
var myStr = string.Format(formatString, "stack");
বিকল্প হিসাবে সি # কনটেনটেশন অপারেটর ব্যবহার করা হয়:
var strVar = "stack";
var myStr = "This is " + strVar + "overflow";
আপনি যদি প্রচুর পরিমাণে কনটেক্সেশন করছেন তবে StringBuilder
ক্লাসটি আরও দক্ষ যা ব্যবহার করুন :
var strVar = "stack";
var stringBuilder = new StringBuilder("This is ");
for (;;)
{
stringBuilder.Append(strVar); // spot the deliberate mistake ;-)
}
stringBuilder.Append("overflow");
var myStr = stringBuilder.ToString();
সি # 6.0
string mystr = $"This is {strVar}overflow";
তার জন্য কোনও অপারেটর নেই। আপনার ব্যবহার করা দরকার string.Format
।
string strVar = "stack";
string mystr = string.Format("This is {0}soverflow", strVar);
দুর্ভাগ্যক্রমে string.Format
একটি স্থিতিশীল পদ্ধতি, সুতরাং আপনি সহজভাবে লিখতে পারবেন না "This is {0}soverflow".Format(strVar)
। কিছু লোক একটি এক্সটেনশন পদ্ধতি সংজ্ঞায়িত করেছে, এটি এই সিনট্যাক্সের অনুমতি দেয়।
ব্যবহার string.Format
:
string mystr = string.Format("This is {0}overflow", "stack");
আপনি ব্যবহার করা উচিত String.Format()
। বাক্য গঠনটি কিছুটা আলাদা, পরিবর্তে সংখ্যার স্থানধারক ব্যবহৃত হয়।
উদাহরণ:
String.Format("item {0}, item {1}", "one", "two")
আরও তথ্যের জন্য http://msdn.microsoft.com/en-us/library/system.string.format.aspx এ দেখুন ।
আপনার কাছে 2 টি বিকল্প রয়েছে। আপনি স্ট্রিং.ফর্ম্যাট ব্যবহার করতে পারেন বা আপনি কনক্যাটেনশন অপারেটরটি ব্যবহার করতে পারেন।
String newString = String.Format("I inserted this string {0} into this one", oldstring);
অথবা
String newString = "I inserted this string " + oldstring + " into this one";
String.Format()
স্ট্রিংবিল্ডার ব্যবহার করে। স্ট্রিংবিল্ডার সাধারণত প্রচুর স্ট্রিং সংমিশ্রনের সময় আরও কার্যকর তবে কনক্যাটেনশন অপারেটর এক অফের জন্য উপযুক্ত। String.Format()
ফর্ম্যাটিংয়ের সময় আউটপুট প্রয়োগ করা প্রয়োজন, উদাহরণস্বরূপ প্যাডিং যুক্ত করতে বা সংখ্যাসূচক মানগুলিতে শূন্য করতে। সুতরাং String.Format()
একটি লুপ ব্যবহার করে সম্ভাব্যভাবে অনেকগুলি স্ট্রিংবিল্ডার ইনস্ট্যান্ট করে তুলবে। সেই পরিস্থিতিতে লুপের বাইরে এবং লুপের AppendFormat()
ভিতরে ঘোষিত একক স্ট্রিংবিল্ডার ব্যবহার করা ভাল ।
স্ট্রিং সহ স্থানধারীদের বাস্তবায়নের আরও একটি উপায় রয়েছে ep প্রতিস্থাপন, অদ্ভুতভাবে কিছু পরিস্থিতিতে সহায়তা করে:
mystr = mystr.Replace("%soverflow", strVar);
আপনি নিম্নলিখিত উপায় ব্যবহার করতে পারেন
স্ট্রিং বিরতি
$ বিশেষ অক্ষর একটি স্ট্র্যাপের আক্ষরিককে একটি বিভক্ত স্ট্রিং হিসাবে চিহ্নিত করে। যেমন
string name = "Mark";
string surname = "D'souza";
WriteLine($"Name :{name} Surname :{surname}" );//Name :Mark Surname :D'souza
একটি ইন্টারপোল্টেড স্ট্রিং একটি স্ট্রিং আক্ষরিক যা এতে অন্তরবিচ্ছিন্ন এক্সপ্রেশন থাকতে পারে। যখন কোনও বিভক্ত স্ট্রিংটি ফলাফলের স্ট্রিংয়ে সমাধান করা হয় তখন ইন্টারপোল্টেড এক্সপ্রেশন সহ আইটেমগুলি এক্সপ্রেশন ফলাফলের স্ট্রিং উপস্থাপনা দ্বারা প্রতিস্থাপিত হয়।
String.Format
স্ট্রিং.ফর্ম্যাট ব্যবহার করুন যদি আপনাকে অন্য স্ট্রিংয়ে কোনও অবজেক্ট, ভেরিয়েবল বা এক্সপ্রেশনের মান সন্নিবেশ করতে হয়।
WriteLine(String.Format("Name: {0}, Surname : {1}", name, surname));
ব্যবহার করুন:
strVar = "stack"
mystr = String.Format("This is {0}", strVar);
আপনি এটি এক্সপেনসিভ দিয়ে সম্পাদন করতে পারেন: https://github.com/enderly/Expansive