字符串检测类

     /// <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]+)$");
        }

    }
posted on 2008-11-06 16:06  原始部落  阅读(178)  评论(0编辑  收藏  举报