۰۵-تير-۱۳۸۸, ۱۹:۴۵:۵۹
سلام
کار با رشته ها
شی String تو نیم اسپیس System هست و میتونه رشته های یونیکد (دو بایتی) رو ذخیره کنه.
یعنی باید using namespace System; رو تو نیم اسپیس برنامه تون معرفی کنید. البته بطور پیش فرض معرفی شده.
String ^str1;
این دستور یه رشته به نام str1 میسازه.
خط اول سه تا رشته معرفی شده.
خط 2 و 3 رشته های اول و دوم توسط اپراتور = مقداردهی شدن.
خط 4 اپراتور + دو رشته میگیره و خروجیش رشته حاصل اتصال رشته اول و دومه. البته برای اتصال دستور concat هم هست.
دستور Insert :
دو تا پارامتر میگیره. اولی شماره یه کاراکتر مربوط به خود رشته صدا زننده تابع. پارامتر دوم یه رشته که به اون قسمت از رشته صاحب تابع اضافه میشه.
دستور Remove :
پارامتر اول شماره یه کاراکتر رو میگیره. اگر پارامتر دوم استفاده نشه از اون کاراکتری که مشخص شده تا آخر پاک میشه.
پارمتر دوم تعداد کاراکتریه که می خواین پاک کنین.
دستور Replace :
تو رشته صاحب تابع میگرده و هرجا یه رشته برابر با پارامتر اول پیدا کرد، رشته تابع دوم رو به جای اون میذاره.
دستور Substring :
برای جدا کردن یه زیر رشته از رشته اصلی. مثل دستور Replace به دو شکل استفاده میشه.
پارامتر اول شماره کارکتری که جدا کردن باید از اونجا شروع بشه.
پارامتر دوم تعداد کارکتری که می خوان جدا کنین. اگه مقدار دهی نشه زیر رشته تا آخر رشته اصلی جدا میشه)
دستور ToLower و ToUpper
تبدیل حروف بزرگ و کوچیک . . .
دستور Trim :
تمام فضاهای خالی ابتدا و انتهای رشته رو پاک می کنه.
TrimStart و TrimEnd رو هم امتحان کنید . . .
دستور Compare :
دو تا رشته میگیره. حرف به حرف رشته ها رو با هم مقایشه می کنه. اگه تا آخر کاراکتر ها برابر بودن صفر برمیگردونه. در غیر اینطورت 1 یا -1 بر میگرده (به ترتیب حروف الفبا)
Length تعداد کاراکتر های رشته رو میده.
از اپراتور [ ] برای دسترسی به یه کارکتر رشته استفاده میشه.
اگه دقت کنید بعضی از توابع مثل concat و compare یه طوری عجیب استفاده شدن. انگار میشه هیچ ربطی به شی صدا زننده تابع نداشته باشن. درسته! یه جورایی friend تعریف شدن.
به نظر من اینطوری قشنگ تره !
دیگه چیزی به ذهنم نمیرسه !
سوال داشتین تاپیک جدید باز کنین . . .
کار با رشته ها
شی String تو نیم اسپیس System هست و میتونه رشته های یونیکد (دو بایتی) رو ذخیره کنه.
یعنی باید using namespace System; رو تو نیم اسپیس برنامه تون معرفی کنید. البته بطور پیش فرض معرفی شده.
String ^str1;
این دستور یه رشته به نام str1 میسازه.
کد:
String ^str1, ^str2, ^str3;
str1 = "www.iranvig.com";
str2 = "forum.iranled.com";
str3 = str1 + str2;
textBox1->Text = str1;
خط اول سه تا رشته معرفی شده.
خط 2 و 3 رشته های اول و دوم توسط اپراتور = مقداردهی شدن.
خط 4 اپراتور + دو رشته میگیره و خروجیش رشته حاصل اتصال رشته اول و دومه. البته برای اتصال دستور concat هم هست.
کد:
String ^str1, ^str2;
str1 = "www.iranvig.com";
str2 = "forum.iranled.com";
str1 = str1->Concat("site : " ,str1, " - ", str2);
//site : www.iranvig.com - forum.iranled.com
دستور Insert :
دو تا پارامتر میگیره. اولی شماره یه کاراکتر مربوط به خود رشته صدا زننده تابع. پارامتر دوم یه رشته که به اون قسمت از رشته صاحب تابع اضافه میشه.
کد:
str1 = "www.iran.com";
str1 = str1->Insert(8, "vig");
//www.iranvig.com
دستور Remove :
پارامتر اول شماره یه کاراکتر رو میگیره. اگر پارامتر دوم استفاده نشه از اون کاراکتری که مشخص شده تا آخر پاک میشه.
کد:
str1 = "www.iranvig.com";
str1 = str1->Remove(11);
//www.iranvig
پارمتر دوم تعداد کاراکتریه که می خواین پاک کنین.
کد:
str1 = "www.iranvig.com";
str1 = str1->Remove(8, 3);
//www.iran.com
دستور Replace :
تو رشته صاحب تابع میگرده و هرجا یه رشته برابر با پارامتر اول پیدا کرد، رشته تابع دوم رو به جای اون میذاره.
کد:
str1 = "www.iranvig.com";
str1 = str1->Replace("vig", "led");
//www.iranled.com
دستور Substring :
برای جدا کردن یه زیر رشته از رشته اصلی. مثل دستور Replace به دو شکل استفاده میشه.
پارامتر اول شماره کارکتری که جدا کردن باید از اونجا شروع بشه.
کد:
str1 = "www.iranvig.com";
str1 = str1->Substring(4);
//iranvig.com
پارامتر دوم تعداد کارکتری که می خوان جدا کنین. اگه مقدار دهی نشه زیر رشته تا آخر رشته اصلی جدا میشه)
کد:
str1 = "www.iranvig.com";
str1 = str1->Substring(4, 7);
//iranvig
دستور ToLower و ToUpper
تبدیل حروف بزرگ و کوچیک . . .
کد:
str1 = "www.IRANvig.com";
str1 = str1->ToLower();
//www.iranvig.com
دستور Trim :
تمام فضاهای خالی ابتدا و انتهای رشته رو پاک می کنه.
کد:
str1 = " www.iranvig.com ";
str1 = str1->TrimStart();
//www.iranvig.com
TrimStart و TrimEnd رو هم امتحان کنید . . .
دستور Compare :
دو تا رشته میگیره. حرف به حرف رشته ها رو با هم مقایشه می کنه. اگه تا آخر کاراکتر ها برابر بودن صفر برمیگردونه. در غیر اینطورت 1 یا -1 بر میگرده (به ترتیب حروف الفبا)
کد:
str1 = "www.iranvig.com";
int result = str1->Compare(str1, "abc");
//1
Length تعداد کاراکتر های رشته رو میده.
کد:
str1 = "www.iranvig.com";
int result = str1->Length;
//15
از اپراتور [ ] برای دسترسی به یه کارکتر رشته استفاده میشه.
کد:
str1 = "www.iranvig.com";
textBox1->Text = str1[4].ToString();
//i
اگه دقت کنید بعضی از توابع مثل concat و compare یه طوری عجیب استفاده شدن. انگار میشه هیچ ربطی به شی صدا زننده تابع نداشته باشن. درسته! یه جورایی friend تعریف شدن.
به نظر من اینطوری قشنگ تره !
کد:
String ^str1, ^str2;
str1 = "iranvig.com";
str2 = String::Concat("www.", str1);
//www.iranvig.com
دیگه چیزی به ذهنم نمیرسه !
سوال داشتین تاپیک جدید باز کنین . . .