字符串检测类
/// <summary>
/// 字符串检测类
/// </summary>
public static class StringChecker
{
/// <summary>
/// 是否为正整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为正整数返回true, 否则返回false</returns>
public static bool PositiveInteger(string sData)
{
return Regex.IsMatch(sData, @"^[1-9]\d*$");
}
/// <summary>
/// 是否为负整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为负整数返回true, 否则返回false</returns>
public static bool NegativeInteger(string sData)
{
return Regex.IsMatch(sData, @"^-[1-9]\d*$");
}
/// <summary>
/// 是否为整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为整数返回true, 否则返回false</returns>
public static bool Integer(string sData)
{
return Regex.IsMatch(sData, @"^-?[1-9]\d*$");
}
/// <summary>
/// 是否为非负整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为非负整数返回true, 否则返回false</returns>
public static bool NonnegativeInteger(string sData)
{
return Regex.IsMatch(sData, @"^[1-9]\d*|0$");
}
/// <summary>
/// 是否为非正整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为非正整数返回true, 否则返回false</returns>
public static bool NonpositiveInteger(string sData)
{
return Regex.IsMatch(sData, @"^-[1-9]\d*|0$");
}
/// <summary>
/// 是否为正浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为正浮点数返回true, 否则返回false</returns>
public static bool PositiveFloat(string sData)
{
return Regex.IsMatch(sData, @"^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$");
}
/// <summary>
/// 是否为负浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为负浮点数返回true, 否则返回false</returns>
public static bool NegativeFloat(string sData)
{
return Regex.IsMatch(sData, @"^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$");
}
/// <summary>
/// 是否为浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为浮点数返回true, 否则返回false</returns>
public static bool Float(string sData)
{
return Regex.IsMatch(sData, @"^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$");
}
/// <summary>
/// 是否为非负浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为非负浮点数返回true, 否则返回false</returns>
public static bool NonNegativeFloat(string sData)
{
return Regex.IsMatch(sData, @"^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$");
}
/// <summary>
/// 是否为非正浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为非正浮点数返回true, 否则返回false</returns>
public static bool NonPositiveFloat(string sData)
{
return Regex.IsMatch(sData, @"^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$");
}
/// <summary>
/// 是否为字母
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为字母返回true, 否则返回false</returns>
public static bool Letter(string sData)
{
return Regex.IsMatch(sData, @"^[A-Za-z]+$");
}
/// <summary>
/// 是否为大写字母
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为大写字母返回true, 否则返回false</returns>
public static bool CapitalLetter(string sData)
{
return Regex.IsMatch(sData, @"^[A-Z]+$");
}
/// <summary>
/// 是否为小写字母
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为小写字母返回true, 否则返回false</returns>
public static bool SmallLetter(string sData)
{
return Regex.IsMatch(sData, @"^[a-z]+$");
}
/// <summary>
/// 是否为字母加数字
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为字母加数字返回true, 否则返回false</returns>
public static bool NumberAndLetter(string sData)
{
return Regex.IsMatch(sData, @"^[A-Za-z0-9]+$");
}
/// <summary>
/// 是否为IP地址
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为IP地址返回true, 否则返回false</returns>
public static bool IPAddress(string sData)
{
return Regex.IsMatch(sData, @"\d+\.\d+\.\d+\.\d+");
}
/// <summary>
/// 是否为中国居民身份证号码
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为中国居民身份证号码返回true, 否则返回false</returns>
public static bool IdentityCardNumber(string sData)
{
return Regex.IsMatch(sData, @"\d{15}|\d{18}");
}
/// <summary>
/// 是否为汉字
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为汉字返回true, 否则返回false</returns>
public static bool ChineseText(string sData)
{
return Regex.IsMatch(sData, @"[\u4e00-\u9fa5]");
}
/// <summary>
/// 是否为邮件地址
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为邮件地址返回true, 否则返回false</returns>
public static bool Email(string sData)
{
return Regex.IsMatch(sData, @"\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");
}
/// <summary>
/// 是否是字母数字下划线组合
/// </summary>
/// <param name="sData"></param>
/// <returns></returns>
public static bool NumberLetterAndUnderline(string sData)
{
return Regex.IsMatch(sData, @"^\w+$");
}
/// <summary>
/// 是否是字母数字下划线汉字组合
/// </summary>
/// <param name="sData"></param>
/// <returns></returns>
public static bool NumberLetterUnderlineAndChineseText(string sData)
{
return Regex.IsMatch(sData, @"^(\w+)|([\u0391-\uFFE5]+)$");
}
}
/// 字符串检测类
/// </summary>
public static class StringChecker
{
/// <summary>
/// 是否为正整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为正整数返回true, 否则返回false</returns>
public static bool PositiveInteger(string sData)
{
return Regex.IsMatch(sData, @"^[1-9]\d*$");
}
/// <summary>
/// 是否为负整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为负整数返回true, 否则返回false</returns>
public static bool NegativeInteger(string sData)
{
return Regex.IsMatch(sData, @"^-[1-9]\d*$");
}
/// <summary>
/// 是否为整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为整数返回true, 否则返回false</returns>
public static bool Integer(string sData)
{
return Regex.IsMatch(sData, @"^-?[1-9]\d*$");
}
/// <summary>
/// 是否为非负整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为非负整数返回true, 否则返回false</returns>
public static bool NonnegativeInteger(string sData)
{
return Regex.IsMatch(sData, @"^[1-9]\d*|0$");
}
/// <summary>
/// 是否为非正整数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为非正整数返回true, 否则返回false</returns>
public static bool NonpositiveInteger(string sData)
{
return Regex.IsMatch(sData, @"^-[1-9]\d*|0$");
}
/// <summary>
/// 是否为正浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为正浮点数返回true, 否则返回false</returns>
public static bool PositiveFloat(string sData)
{
return Regex.IsMatch(sData, @"^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$");
}
/// <summary>
/// 是否为负浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为负浮点数返回true, 否则返回false</returns>
public static bool NegativeFloat(string sData)
{
return Regex.IsMatch(sData, @"^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$");
}
/// <summary>
/// 是否为浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为浮点数返回true, 否则返回false</returns>
public static bool Float(string sData)
{
return Regex.IsMatch(sData, @"^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$");
}
/// <summary>
/// 是否为非负浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为非负浮点数返回true, 否则返回false</returns>
public static bool NonNegativeFloat(string sData)
{
return Regex.IsMatch(sData, @"^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$");
}
/// <summary>
/// 是否为非正浮点数
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为非正浮点数返回true, 否则返回false</returns>
public static bool NonPositiveFloat(string sData)
{
return Regex.IsMatch(sData, @"^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$");
}
/// <summary>
/// 是否为字母
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为字母返回true, 否则返回false</returns>
public static bool Letter(string sData)
{
return Regex.IsMatch(sData, @"^[A-Za-z]+$");
}
/// <summary>
/// 是否为大写字母
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为大写字母返回true, 否则返回false</returns>
public static bool CapitalLetter(string sData)
{
return Regex.IsMatch(sData, @"^[A-Z]+$");
}
/// <summary>
/// 是否为小写字母
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为小写字母返回true, 否则返回false</returns>
public static bool SmallLetter(string sData)
{
return Regex.IsMatch(sData, @"^[a-z]+$");
}
/// <summary>
/// 是否为字母加数字
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为字母加数字返回true, 否则返回false</returns>
public static bool NumberAndLetter(string sData)
{
return Regex.IsMatch(sData, @"^[A-Za-z0-9]+$");
}
/// <summary>
/// 是否为IP地址
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为IP地址返回true, 否则返回false</returns>
public static bool IPAddress(string sData)
{
return Regex.IsMatch(sData, @"\d+\.\d+\.\d+\.\d+");
}
/// <summary>
/// 是否为中国居民身份证号码
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为中国居民身份证号码返回true, 否则返回false</returns>
public static bool IdentityCardNumber(string sData)
{
return Regex.IsMatch(sData, @"\d{15}|\d{18}");
}
/// <summary>
/// 是否为汉字
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为汉字返回true, 否则返回false</returns>
public static bool ChineseText(string sData)
{
return Regex.IsMatch(sData, @"[\u4e00-\u9fa5]");
}
/// <summary>
/// 是否为邮件地址
/// </summary>
/// <param name="sData">要检测的字符串</param>
/// <returns>为邮件地址返回true, 否则返回false</returns>
public static bool Email(string sData)
{
return Regex.IsMatch(sData, @"\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");
}
/// <summary>
/// 是否是字母数字下划线组合
/// </summary>
/// <param name="sData"></param>
/// <returns></returns>
public static bool NumberLetterAndUnderline(string sData)
{
return Regex.IsMatch(sData, @"^\w+$");
}
/// <summary>
/// 是否是字母数字下划线汉字组合
/// </summary>
/// <param name="sData"></param>
/// <returns></returns>
public static bool NumberLetterUnderlineAndChineseText(string sData)
{
return Regex.IsMatch(sData, @"^(\w+)|([\u0391-\uFFE5]+)$");
}
}