PDA

View Full Version : مبتدی: جدا کردن علامت ها از اعداد با استفاده از isDigit , isLetter



m0rtezaaghili
شنبه 11 آبان 1392, 13:28 عصر
سلام دوستان،

امیدوارم حالتون خوب باشه.

من می خوام یک متن رو از طریق کنسول دریافت کنم و بتونم با چک کردن این جمله که عدد هست یا علامت اونو جدا کنم ولی راستش هرکاری میکنم جواب نمیگیرم.
این کد قسمتی از ماشین حساب می باشد. با یک شکل دیگه میتونم این کارو انجام بدم ولی باید از isDigit , isLetter , IsPunctuation استفاده کنم.

فقط توی شرط مشکل دارم.
اگه خواستین کدی که پیدا کردم رو اینجا میزارم.

پ.ن : میدونم درخواست اینطور کدهایی خلاف قوانین هست ولی حتی اگه توضیح بدین خوبه

خیلی ممنونم.

دلتنگ اسمان
شنبه 11 آبان 1392, 15:02 عصر
ایا جمله ورودی شما میتونه بصورت ترکیبی از عدد و حروف و علائم باشه؟ اگه اینطوری باشه جمله ورودی رو باید کاراکتر به کاراکتر بررسی کنی.که در این صورت از substring میتونی استفاده کنی

m0rtezaaghili
شنبه 11 آبان 1392, 15:45 عصر
بله، ورودی باید به این شکل باشه مثلاً : 2-6+8

مشکل من اینه که نمیدونم چطور باید تک تک بررسی کنم. باید با دستورهای isDigit و امثال اون چک بشن که من نمیتونم جواب بگیرم

دلتنگ اسمان
شنبه 11 آبان 1392, 16:37 عصر
فک کنم کارتون رو را بندازه:


char[] ary = textBox1.Text.ToCharArray();
for (int y=0;y<ary.Length ;y++)
{
if (char.IsDigit(ary[y]))
{
MessageBox.Show("digit: " + ary[y]);
}
else if (char.IsLetter(ary[y]))
{
MessageBox.Show("Letter: " + ary[y]);
}
else if(char.IsPunctuation(ary[y]))
{
MessageBox.Show("IsPunctuation: " + ary[y]);
}

علی متقی پور
شنبه 11 آبان 1392, 20:09 عصر
با سلام

نیازی به کد بالا نیست
اگر ار حلقه foreach برای یک استرینگ استفاد کنید. تک تک کاراکترهای اونو جدا جدا و از جنس کاراکتر و نه استرینگ در نظر میگیره