正则表达式数据验证帮助类

    /// <summary>
    /// 正则表达式验证
    /// </summary>
    public class ValidateHelper
    {
        /// <summary>
        /// 检查是否是数字
        /// </summary>
        /// <param name="str">检查的字符串</param>
        /// <returns></returns>
        public static bool IsNumber(string str)
        {
            return IsNumber(str, false, false);
        }
        /// <summary>
        /// 检查是否是数字
        /// </summary>
        /// <param name="str">检查的字符串</param>
        /// <param name="fushu">是否是负数</param>
        /// <param name="xiaoshu">是否是小数</param>
        /// <returns></returns>
        public static bool IsNumber(string str,bool fushu,bool xiaoshu)
        {
            if (string.IsNullOrEmpty(str))
            {
                return false;
            }
            else
            {
                string pattern;
                if(fushu==true && xiaoshu == true)
                {
                    pattern = "^(-?\\d+)(\\.\\d+)?$";
                }
                else
                {
                    if(fushu==false && xiaoshu == false)
                    {
                        pattern = "^(\\d+)$";
                    }
                    else
                    {
                        if (fushu == false)
                        {
                            pattern = "^(-?\\d+)$";
                        }
                        else
                        {
                            pattern = "^(\\d+)(\\.\\d+)?$";
                        }
                    }
                }
                Regex reg = new Regex(pattern);
                return reg.IsMatch(str);
            }
        }
        /// <summary>
        /// 检查是否是正整数
        /// </summary>
        /// <param name="str">检查的字符串</param>
        /// <returns></returns>
        public static bool IsPositiveInteger(string str)
        {
            Regex reg = new Regex("^[0-9]*[1-9][0-9]*$");
            return reg.IsMatch(str);
        }
        /// <summary>
        /// 检查是否是整数
        /// </summary>
        /// <param name="str">检查的字符串</param>
        /// <returns></returns>
        public static bool IsInteger(string str)
        {
            Regex reg = new Regex("^-?\\d+$");
            return reg.IsMatch(str);
        }
        /// <summary>
        /// 检查是否是浮点数
        /// </summary>
        /// <param name="str">检查的字符串</param>
        /// <returns></returns>
        public static bool IsMumberic(string str)
        {
            Regex reg = new Regex("^\\d+(\\.\\d+)?$");
            return reg.IsMatch(str);
        }
        /// <summary>
        /// 检查是否是非负浮点数
        /// </summary>
        /// <param name="str">检查的字符串</param>
        /// <returns></returns>
        public static bool IsPositiveFloat(string str)
        {
            Regex reg = new Regex("^\\d+(\\.\\d+)?$");
            return reg.IsMatch(str);
        }
        /// <summary>
        /// 检查是否是正确的Email地址
        /// </summary>
        /// <param name="str">检查的字符串</param>
        /// <returns></returns>
        public static bool IsEmail(string str)
        {
            string pattern = @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]
                            {1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))
                            ([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
            Regex reg = new Regex(pattern, RegexOptions.IgnoreCase);
            return reg.IsMatch(str);
        }
    }

 

posted @ 2020-09-07 23:02  tiger_yj  阅读(124)  评论(0编辑  收藏  举报