PageValidate 类

转载:http://www.cnblogs.com/sufei/archive/2010/01/14/1648028.html

using System.Text.RegularExpressions;

/// <summary>
/// 开发人:苏飞
/// 开发时间:2009-09-11
/// 主要功能:判断页面各个控件的输入
/// </summary>
namespace BaseFunction
{
    public class PageValidate
    {
        public PageValidate()
        {
            //
            // TODO: 在此处添加构造函数逻辑
            //
        }

        private static Regex RegNumber = new Regex("^[0-9]+$");
        private static Regex RegNumberSign = new Regex("^[+-]?[0-9]+$");
        private static Regex RegDecimal = new Regex("^[0-9]+[.]?[0-9]+$");
        private static Regex RegDecimalSign = new Regex("^[+-]?[0-9]+[.]?[0-9]+$"); //等价于^[+-]?\d+[.]?\d+$
        private static Regex RegEmail = new Regex("^[\\w-]+@[\\w-]+\\.(com|net|org|edu|mil|tv|biz|info)$");//w 英文字母或数字的字符串,和 [a-zA-Z0-9] 语法一样 
        private static Regex RegCHZN = new Regex("[\u4e00-\u9fa5]");
        public static Regex RegMobile = new Regex("^1(3[4-9]|5[012789]|8[7-8])\\d{8}$");

        //验证联通手机号码
        public static Regex RegUnicom = new Regex("^1(3[012]|5[56]|8[5-6])\\d{8}$");
        //验证联通固话


        #region 日期检查
        /// <summary>
        /// Format 的摘要说明。
        /// </summary>
        public string IsDateTime(string Record)
        {
            if (Convert.ToDateTime(Record).ToString("yyyy-MM-dd") == DateTime.MaxValue.ToString("yyyy-MM-dd") || Convert.ToDateTime(Record).ToString("yyyy-MM-dd") == DateTime.MinValue.ToString("yyyy-MM-dd") || Record == "" || Convert.ToDateTime(Record).ToString("yyyy-MM-dd") == "1900-01-01")
                return "—";
            else
                return Convert.ToDateTime(Record).ToString("yyyy-M-dd");
        }

        #endregion



        #region 数字字符串检查

        /// <summary>
        /// 是否数字字符串
        /// </summary>
        /// <param name="inputData">输入字符串</param>
        /// <returns></returns>
        public static bool IsNumber(string inputData)
        {
            Match m = RegNumber.Match(inputData);
            return m.Success;
        }
        /// <summary>
        /// 是否数字字符串 可带正负号
        /// </summary>
        /// <param name="inputData">输入字符串</param>
        /// <returns></returns>
        public static bool IsNumberSign(string inputData)
        {
            Match m = RegNumberSign.Match(inputData);
            return m.Success;
        }
        /// <summary>
        /// 是否是浮点数
        /// </summary>
        /// <param name="inputData">输入字符串</param>
        /// <returns></returns>
        public static bool IsDecimal(string inputData)
        {
            Match m = RegDecimal.Match(inputData);
            return m.Success;
        }
        /// <summary>
        /// 是否是浮点数 可带正负号
        /// </summary>
        /// <param name="inputData">输入字符串</param>
        /// <returns></returns>
        public static bool IsDecimalSign(string inputData)
        {
            Match m = RegDecimalSign.Match(inputData);
            return m.Success;
        }

        #endregion

        #region 中文检测

        /// <summary>
        /// 检测是否有中文字符
        /// </summary>
        /// <param name="inputData"></param>
        /// <returns></returns>
        public static bool IsHasCHZN(string inputData)
        {
            Match m = RegCHZN.Match(inputData);
            return m.Success;
        }

        #endregion

        #region 邮件地址
        /// <summary>
        /// 是否是浮点数 可带正负号
        /// </summary>
        /// <param name="inputData">输入字符串</param>
        /// <returns></returns>
        public static bool IsEmail(string inputData)
        {
            Match m = RegEmail.Match(inputData);
            return m.Success;
        }

        /// <summary>
        /// 验证是否为移动号码
        /// </summary>
        /// <param name="number">手机号</param>
        /// <returns>Boolean</returns>
        public static Boolean isMobile(string number)
        {
            Match m = RegMobile.Match(number);
            return m.Success;
        }
        /// <summary>
        /// 验证是否为联通号码
        /// </summary>
        /// <param name="number">手机号</param>
        /// <returns></returns>
        public static Boolean IsUnicom(string number)
        {
            Match m = RegUnicom.Match(number);
            return m.Success;
        }
        #endregion

        #region 其他

        /// <summary>
        /// 检查字符串最大长度,返回指定长度的串
        /// </summary>
        /// <param name="sqlInput">输入字符串</param>
        /// <param name="maxLength">最大长度</param>
        /// <returns></returns>   
        public static string SqlText(string sqlInput, int maxLength)
        {
            if (sqlInput != null && sqlInput != string.Empty)
            {
                sqlInput = sqlInput.Trim();
                if (sqlInput.Length > maxLength)//按最大长度截取字符串
                    sqlInput = sqlInput.Substring(0, maxLength);
            }
            return sqlInput;
        }




        #endregion


    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 用于RichTextBox控件记录日志信息

    跟着阿笨一起玩NET
  • [C#] 常用工具类——加密解密类

    跟着阿笨一起玩NET
  • PropertyGrid中的枚举显示为中文

    本文转载:http://www.cnblogs.com/yank/archive/2011/09/17/2179598.html

    跟着阿笨一起玩NET
  • 使用开源框架Sqlsugar结合mysql开发一个小demo

    sqlsugar是性能最好的ORM之一,具有超越Dapper的性能 ,走的是EMIT够构中间语言动态编译到程序集,完成高性能的实体绑定,达到原生水平。

    用户7053485
  • 如何解决Transaction 注解,方法内部调用无效问题

    Transaction 注解开启事务,是通过代理对象对方法进行封装开启和关闭事务,但生效的的条件是外部调用,而内部调用并不会走代理对象,这就造成了事务失效。

    海涛
  • Go 语言 Web 编程系列(七)—— 基于 gorilla/mux 包实现路由匹配:处理静态资源响应

    到目前为止,我们都是在处理动态资源,也就是 Go 代码实现的响应。HTTP 服务器除了处理动态资源之外,还应该具备处理静态资源的能力,比如 HTML、CSS、J...

    学院君
  • [干货来袭]C#6.0新特性

    微软昨天发布了新的VS 2015 ..随之而来的还有很多很多东西... .NET新版本 ASP.NET新版本...等等..太多..实在没消化.. 分享一下也是昨...

    GuZhenYin
  • selenium3降版为selenium

    安装selenium时,直接执行 pip2 install selenium ,要验证selenium是否成功安装时却报错,如下图

    用户2398817
  • js --- 字符串和 二进制 互相转换

    小蔚
  • MQ在分布式系统中的使用场景

    一项技术的产生必然是为了解决问题而生,了解了一项技术解决的问题,就能够很轻松的理解这项技术的设计根本,从而更好地理解与使用这项技术。 消息中间件和RPC从根本...

    黄泽杰

扫码关注云+社区

领取腾讯云代金券