स्ट्रिंग नंबरिक है या नहीं चेक करना
स्ट्रिंग सेट करें:
string str = "3456";
LINQ से चेक करें:
str.All(c => char.IsDigit(c))
यह true लौटाता है यदि सभी कैरेक्टर्स डिजिट्स हैं, अन्यथा false।
पूर्ण कोड उदाहरण
using System;
using System.Linq;
namespace Demo {
public class MyApplication {
public static void Main(string[] args) {
string str = "3456";
Console.WriteLine(str.All(c => char.IsDigit(c)));
}
}
}
आउटपुट
True
अन्य तरीके:
| मेथड | कोड | नोट |
|---|---|---|
| int.TryParse | int.TryParse(str, out _) | सबसे अच्छा, पार्स भी करता है |
| int.Parse | int.Parse(str) | इनवैलिड पर एक्सेप्शन फेंकता है |
| Regex | Regex.IsMatch(str, @"^\d+$") | पैटर्न मैचिंग |
| All + IsDigit | str.All(char.IsDigit) | केवल डिजिट्स चेक, पार्स नहीं |
सीमाएं:
All(char.IsDigit)नेगेटिव नंबर्स (-123), दशमलव (3.14), हेक्स (0xFF) के लिए false लौटाता है- खाली स्ट्रिंग के लिए true लौटाता है (वैक्यूसली ट्रू)
- असली पार्सिंग के लिए
int.TryParseयाdouble.TryParseउपयोग करें