Test whether a string value is numeric in C#

VB provides the IsNumeric function to test whether a string contains a valid numeric value or not. C# has no such function leaving you to write your own. Here is the most common approach:

    public static bool IsDecimal(string theValue
    {
        try
        {
            Convert.ToDouble(theValue);
            return true;
        } 
        catch 
        {
            return false;
        }
    } //IsDecimal

    public static bool IsInteger(string theValue)
    {
        try
        {
            Convert.ToInt32(theValue);
            return true;
        } 
        catch 
        {
            return false;
        }
    } //IsInteger

Another way is to use Regular Expressions to test that the string contains only digit characters.:

    private static Regex _isNumber = new Regex(@"^\d+$");

    public static bool IsInteger(string theValue)
    {
        Match m = _isNumber.Match(theValue);
        return m.Success;
    } //IsInteger




About TheScarms
About TheScarms


Sample code
version info

If you use this code, please mention "www.TheScarms.com"

Email this page


© Copyright 2024 TheScarms
Goto top of page