من از کاربر ورودی می گیرم و داخل یک متغییر از نوع string ذخیره می کنم حالا می خوام چک کنم که اگر متغییر ذخیره شده از نوع عدد باشه اون متغییر را داخل یک متغییر دیگر بریزه .
باید چه کار کنم مخصوصا درباره تشخص عدد و حروف یک رشته ؟
من از کاربر ورودی می گیرم و داخل یک متغییر از نوع string ذخیره می کنم حالا می خوام چک کنم که اگر متغییر ذخیره شده از نوع عدد باشه اون متغییر را داخل یک متغییر دیگر بریزه .
باید چه کار کنم مخصوصا درباره تشخص عدد و حروف یک رشته ؟
شما به صورت زیر میتونید این کار رو انجام بدین:
فرض کنید ورودی رو کاربر داخل یه تکست باکس وارد میکنه و شما چک میکنید اگه عدد بود اون رو داخل متغیر num2 ذخیره میکنید.
اینم کد:
string str = TextBox1.Text;
int num = 0;
int num2 = 0;
try
{
num = Int32.Parse(str);
num2 = num;
}
catch
{}
این هم از کدی که خودم نوشتم
public static boolean checkInt(String inputString)
{
boolean done = false;
while (! done)
{
try
{
inputString = inputString.trim();
int number = (Integer.valueOf(inputString).intValue());
done = true;
}
catch (NumberFormatException e)
{
return false;
}
}
return true;
}
از regex استفاده کنید
چرا راه دور میرید؟
اول از رفرنس ها یnet. رفرنس microsoft.VisualBasicرو اضاف کنید:
if (Microsoft.VisualBasic.Information.IsNumeric(str1) )
{
//Do Somthing...
}
آره اتفاقا من هم میخاستم بگم که از isNumeric کتابخانه microsoft.VisualBasic هم مینتونین استفاده کنید ولی یادم رفت با این حال regex هم راه دوری نیست و اگر علاوه بر عدد،هم مثلا سیمبل هارو خواستن جدا کنن میتونن یا مثلا فقط بعضی اعداد رو قبول کنه خلاصه خیلی کارها میشه کرد باهاش.