PDA

View Full Version : سوال: چطور میشود اعداد داخل رشته را از کاراکتر های حرفی جدا کرد؟



teona asemani
دوشنبه 10 اسفند 1388, 23:08 عصر
من باید یکسری داده مثل این را در دیتا بیس نگهداری کنم:"75 تا 150 "
هیچ راهی برای تغییر این رشته برای ذخیره سازی وجود ندارد باید بین این اعداد مقایسه قرار بدهم و محاسباتی نیز انجام شود. امکان دارد بتوانم اعداد را از قسمت های دیگر جدا کنم و برای محاسبات استفاده کنم؟

teona asemani
دوشنبه 10 اسفند 1388, 23:34 عصر
از code project پیدا کردم . جوابشو میگذارم کسی خواست استفاده کنه. اگر هم تکراری هست ببخشید

string[] str = ("75 to 150").Split(new char[]{' '});
int[] LoHi = new int[]{int.Parse(str[0]),int.Parse(str[2])};

Hossein1429
دوشنبه 10 اسفند 1388, 23:40 عصر
اگر تمام رشته ها فقط در فرم ذكر شده باشد ("75 تا 150 ") مي تواني از كد زير استفاده كني

str=str.Trim();
strNum1=str.SubString(0,str.IndexOf(" "));
strNum2=str.SubString(str.LastIndexOf(" "),str.Length-str.LastIndexOf(" ")-1);

كه str همان رشته عددي و حرفي، strNum1, strNum2 هم دو عدد موجود در رشته است كه بايد بعد از آن به عدد تبديل شوند.

r00tkit
دوشنبه 10 اسفند 1388, 23:40 عصر
کد هاتو درست قرار بده:چشمک:



string[] str = ("75 to 150").Split(new char[]{' '});
int[] LoHi = new int[]{int.Parse(str[0]),int.Parse(str[2])};

r00tkit
سه شنبه 11 اسفند 1388, 00:06 صبح
برای جدا سازی اعداد از string می تونی از Regular Expressions استفاده کنی

adel-kho
سه شنبه 11 اسفند 1388, 09:37 صبح
من با یه foreach نوشتمش یه کم طولانیه ولی ساده است


string mul = "asd123asdasd32423";
string result="";
foreach (char search in mul)
{
switch (search)
{
case '0':
result = result + "0";
break;
case '1':
result = result + "1";
break;
case '2':
result = result + "2";
break;
case '3':
result = result + "3";
break;
case '4':
result = result + "4";
break;
case '5':
result = result + "5";
break;
case '6':
result = result + "6";
break;
case '7':
result = result + "7";
break;
case '8':
result = result + "8";
break;
case '9':
result = result + "9";
break;
default:

break;
}
}
MessageBox.Show(result);
}