⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 numberutil.cs

📁 Microsoft .net Framework Compact 下串口通讯范例
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;

namespace RFConfigTool
{
    public class NumberUtil
    {
        /// <summary>
        /// 判断字符串是否为含零正整数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns>Positive integer ---- 正整数</returns>
        public static bool IsPositiveInteger(string strNumber)
        {

            foreach (char c in strNumber)
            {
                if (c < '0' || c > '9')
                {
                    return false;
                }
            }

            return true;

            //Regex objNotNumberPattern = new Regex("^\\d+$"); //等效"^[0-9]+$"   

            //bool IsNum = false;

            //IsNum = objNotNumberPattern.IsMatch(strNumber);

            //if (!IsNum) return IsNum;

            ////return IsNum;

            ////增加

            //foreach (char c in strNumber)
            //{
            //    if (!Char.IsNumber(c))
            //    {
            //        return false;
            //    }
            //}

            //return true; 


        }

        /// <summary>
        /// 判断字符串是否为非零正整数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns>Non-vanishing positive integer ---- 非零正整数</returns>
        public static bool IsNonZeroPositiveInteger(string strNumber)
        {

            Regex objNotNumberPattern = new Regex("^[0-9]*[1-9][0-9]*$");
            bool IsNum = false;

            IsNum = objNotNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            return IsNum;

        }

        /// <summary>
        /// 判断字符串是否为含零负整数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns>Negative integer ---- 负整数</returns>
        public static bool IsNegativeInteger(string strNumber)
        {

            Regex objNotNumberPattern = new Regex("^((-\\d+)|(0+))$");
            bool IsNum = false;

            IsNum = objNotNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            return IsNum;

        }

        /// <summary>
        /// 判断字符串是否为非零负整数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns>Non-vanishing negative integer ---- 非零负整数</returns>
        public static bool IsNonZeroNegativeInteger(string strNumber)
        {

            Regex objNotNumberPattern = new Regex("^-[0-9]*[1-9][0-9]*$");
            bool IsNum = false;

            IsNum = objNotNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            return IsNum;

        }

        /// <summary>
        /// 判断字符串是否为整数 
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns>Integer ---- 整数 </returns>
        public static bool IsInteger(string strNumber)
        {

            Regex objNotNumberPattern = new Regex("^-?\\d+$");
            bool IsNum = false;

            IsNum = objNotNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            return IsNum;

        }

        /// <summary>
        /// 判断字符串是否为含零正浮点数
        /// Floating number ---- 浮点数或正浮点数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns></returns>
        public static bool IsPositiveFloatingNumber(string strNumber)
        {

            Regex objNotNumberPattern = new Regex("^\\d+(\\.\\d+)?$");
            bool IsNum = false;

            IsNum = objNotNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            return IsNum;

        }

        /// <summary>
        /// 判断字符串是否为非零正浮点数
        /// Floating number ---- 浮点数或正浮点数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns></returns>
        public static bool IsNonZeroFloatingNumber(string strNumber)
        {

            Regex objNotNumberPattern = new Regex("^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$");
            bool IsNum = false;

            IsNum = objNotNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            return IsNum;

        }

        /// <summary>
        /// 判断字符串是否为含零负浮点数
        /// Floating number ---- 浮点数或正浮点数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns></returns>
        public static bool IsNegativeFloatingNumber(string strNumber)
        {

            Regex objNotNumberPattern = new Regex("^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$");
            bool IsNum = false;

            IsNum = objNotNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            return IsNum;

        }

        /// <summary>
        /// 判断字符串是否为非零负浮点数
        /// Floating number ---- 浮点数或正浮点数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns></returns>
        public static bool IsNonZeroNegativeFloatingNumber(string strNumber)
        {

            Regex objNotNumberPattern = new Regex("^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$");
            bool IsNum = false;

            IsNum = objNotNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            return IsNum;

        }

        /// <summary>
        /// 判断字符串是否为正整数
        /// Floating number ---- 浮点数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns></returns>
        public static bool IsFloatingNumber(string strNumber)
        {

            Regex objNotNumberPattern = new Regex("^(-?\\d+)(\\.\\d+)?$");
            bool IsNum = false;

            IsNum = objNotNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            return IsNum;

        }

        /// <summary>
        /// 判断字符串是否为正数
        /// Positive number ---- 正数
        /// </summary>
        /// <param name="strNumber"></param>
        /// <returns></returns>
        public static bool IsPositiveNumber(string strNumber)
        {
            Regex objNotNumberPattern = new Regex("[^0-9.-]");
            Regex objTwoDotPattern = new Regex("[0-9]*[.][0-9]*[.][0-9]*");
            Regex objTwoMinusPattern = new Regex("[0-9]*[-][0-9]*[-][0-9]*");
            string strValidRealPattern = "^([-]|[.]|[-.]|[0-9])[0-9]*[.]*[0-9]+$";
            string strValidIntegerPattern = "^([-]|[0-9])[0-9]*$";
            Regex objNumberPattern = new Regex("(" + strValidRealPattern + ")|(" + strValidIntegerPattern + ")");

            bool IsNum = false;

            double OutNum = 0;

            IsNum = !objNotNumberPattern.IsMatch(strNumber) &&
            !objTwoDotPattern.IsMatch(strNumber) &&
            !objTwoMinusPattern.IsMatch(strNumber) &&
            objNumberPattern.IsMatch(strNumber);

            if (!IsNum) return IsNum;

            try
            {
                OutNum = Convert.ToDouble(strNumber);

            }
            catch (Exception)
            {
                return false;

            }

            if (strNumber.Substring(0, 1) == "-")
            {
                return false;
            }
            return IsNum;
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -