এটিতে রেজেক্স ওভারহেড নেই
double myNum = 0;
String testVar = "Not A Number";
if (Double.TryParse(testVar, out myNum)) {
// it is a number
} else {
// it is not a number
}
ঘটনাক্রমে, জিইউইডিএসের বর্ণনামূলক ব্যতিক্রম সহ সমস্ত স্ট্যান্ডার্ড ডেটা টাইপ, ট্রাইপার্স সমর্থন করে।
আপডেট
সিক্রেটওয়েপ এনেছে যে "2345," মান উপরের পরীক্ষায় একটি সংখ্যা হিসাবে পাস করবে। তবে, আপনার যদি নিশ্চিত করতে হয় যে স্ট্রিংয়ের মধ্যে থাকা সমস্ত অক্ষরই অঙ্কগুলি রয়েছে, তবে অন্য একটি পদ্ধতি গ্রহণ করা উচিত।
উদাহরণ 1 :
public Boolean IsNumber(String s) {
Boolean value = true;
foreach(Char c in s.ToCharArray()) {
value = value && Char.IsDigit(c);
}
return value;
}
বা আপনি যদি আরও কিছু অভিনব হতে চান
public Boolean IsNumber(String value) {
return value.All(Char.IsDigit);
}
আপডেট 2 (@ স্ট্যাকনফায়ার থেকে নাল বা ফাঁকা স্ট্রিং মোকাবেলা করতে)
public Boolean IsNumber(String s) {
Boolean value = true;
if (s == String.Empty || s == null) {
value=false;
} else {
foreach(Char c in s.ToCharArray()) {
value = value && Char.IsDigit(c);
}
} return value;
}