📄 numberutil.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 + -