PDA

View Full Version : سوال: یافتن یک کاراکتر در یک رشته ؟



arsh64
سه شنبه 08 مهر 1393, 19:21 عصر
با سلام . دوستان من میخوام در C#‎ یک کاراکتر خاص رو توی یک رشته که از کاربر میگیرم پیدا کنم ببینم که تو اون رشته هستش یا نه اگه هست تعدادشم بهم برگردونه و اگر نیست پیغام بده که پیدا نشد . با تشکر از همکاریتون

parvizwpf
سه شنبه 08 مهر 1393, 22:21 عصر
برای تعداد s همون رشته شماست:
int a= s.Where(x => x == 'a').Count();
حالا count رو که از آخرش حذف کنید میشه چیزهایی که پیدا کرد.

Mousavmousab
سه شنبه 08 مهر 1393, 22:31 عصر
سلام

معلومه که این سوال تمرین استاد است.

از متد Contain می تونی استفاده کنی تا رشته با کاراکتر مورد نظر را پیدا کنی.
از Length هم استفاده کن تا تعداد طول رشته را پیدا کنی.





string str = "ths is a test";
if (str.Contains("h"))
{
// شرط برقرار است و رشته حاوی کاراکتر مورد نظر است

// اینم واسه طول رشته
int LengthOfString = str.Length;

}
else
{
//رشته یافت نشد
}




سعی کن خودت بنویسی! روم نشد اینو برای شما بنویسم ، گفتم شاید باعث بشه به سمت برنامه نویسی حرکت کنی.
موفق باشی

elec60
پنج شنبه 10 مهر 1393, 08:52 صبح
سلام

معلومه که این سوال تمرین استاد است.

از متد Contain می تونی استفاده کنی تا رشته با کاراکتر مورد نظر را پیدا کنی.
از Length هم استفاده کن تا تعداد طول رشته را پیدا کنی.





string str = "ths is a test";
if (str.Contains("h"))
{
// شرط برقرار است و رشته حاوی کاراکتر مورد نظر است

// اینم واسه طول رشته
int LengthOfString = str.Length;

}
else
{
//رشته یافت نشد
}




سعی کن خودت بنویسی! روم نشد اینو برای شما بنویسم ، گفتم شاید باعث بشه به سمت برنامه نویسی حرکت کنی.
موفق باشی

برادر این روش تعداد کاراکتر مورد جستجو رو برنمیگردونه، فقط میگه شامل کاراکتر مورد جستجو هست یا نه. بهتره مثل دوستمون parvizwpf از Linq استفاده کنی.

banitaba.ommolketab
پنج شنبه 10 مهر 1393, 14:16 عصر
با سلام . دوستان من میخوام در C#‎‎ یک کاراکتر خاص رو توی یک رشته که از کاربر میگیرم پیدا کنم ببینم که تو اون رشته هستش یا نه اگه هست تعدادشم بهم برگردونه و اگر نیست پیغام بده که پیدا نشد . با تشکر از همکاریتون



private void button1_Click(object sender, EventArgs e)
{
string str = "This a test string";
int pos = 0;
int result = 0;
int count = 0;

while (pos < str.Length)
{
result= str.IndexOf('s', pos);
if (result >= 0)
{
pos = result + 1;
count++;
}
else
pos++;
}
//
if (count > 0)
label1.Text = count.ToString();
else
label1.Text = "پیدا نشد";
}
}