PDA

View Full Version : سوال: جدا کردن عدد از string



ravaei
دوشنبه 23 تیر 1393, 11:24 صبح
درود ، می خوام یه string که مخلوطی از اعداد و حروفه رو فقط اعدادش رو جدا کنم چیکار میشه کرد؟

ghazal_mohammady
دوشنبه 23 تیر 1393, 11:31 صبح
عرض سلام
فکرد کنم باید رشته تونو split کنید .میتونید از subString استفاده کنید و با tryPars عملیات رو هندل کنید.

mh3242
دوشنبه 23 تیر 1393, 11:38 صبح
این لینک (http://stackoverflow.com/questions/2221629/how-to-get-number-from-a-string) رو ببین

ravaei
دوشنبه 23 تیر 1393, 11:50 صبح
عرض سلام
فکرد کنم باید رشته تونو split کنید .میتونید از subString استفاده کنید و با tryPars عملیات رو هندل کنید.

ممنون میشه بیشتر توضیح بدی ، من یه string دارم 2x+3Y=0 می خوام 2 رو تو یه متغیر 3 رو تو یکی دیگه و 0 رو هم تو یکی دیگه بریزم و عملیات روشون انجام بدم
:افسرده:

mesoft
دوشنبه 23 تیر 1393, 15:19 عصر
سلام
با اجازه اساتید
ساده ترین راه اینکه که یک حلقه بزارین بعد کاراکتر کاراکتر رشته رو مقایسه و جدا کنبد

string strtemp = "sample-1393";
int[] inttemp = new int[strtemp.Length];
for (int i = 0, j = 0; i < strtemp.Length; i++)
{
char ch = char.Parse(strtemp.Substring(i, 1));
if ((char.IsDigit(ch)))
{
inttemp[j] = int.Parse(strtemp.Substring(i, 1));
j++;
}
}
موفق باشید

abbas.oveissi
دوشنبه 23 تیر 1393, 17:12 عصر
بهترین روش به نظر من Regex هست.اینم نمونه کد :

string input = "2x+3x=10";
string reg = "[0-9]+";
MatchCollection mcol = Regex.Matches(input, reg);


foreach (Match m in mcol)
{
foreach (Group g in m.Groups)
{
Console.WriteLine(g.Value);
}
}

ravaei
دوشنبه 23 تیر 1393, 19:44 عصر
بهترین روش به نظر من Regex هست.اینم نمونه کد :

string input = "2x+3x=10";
string reg = "[0-9]+";
MatchCollection mcol = Regex.Matches(input, reg);


foreach (Match m in mcol)
{
foreach (Group g in m.Groups)
{
Console.WriteLine(g.Value);
}
}


مرسی اقا دمت گرم کارم را افتاد خیلی خوب بود . :لبخند: