正则表达式

来源:互联网 发布:mysql如何导出sql文件 编辑:程序博客网 时间:2024/06/01 09:59


1.正则表达式

   常用来检查,检索,校验或者替换文本

   

   正则表达式支持所有平台

   比如说java,php,c#,c,c++等等

   

   元字符

   正则表达式语言由两种基本字符组成,原义(正常)文本字符和元字符

   不同的元字符代表的含义是不同的,元字符的作用是让正则表达式具有处理文本或者

   字符串的能力

   

   常见的元字符:

   ^         表示以什么什么开头

   $         表示以什么什么结尾

   *         表示0 or more

   ?         表示0 or 1

   +         表示1 or more

   \w        表示字母,数字,下划线,中文任意字符

   \d        表示数字

  \D        表示非数字

   \s        表示字符串

   \S        表示非空字符串

   []        组合

   [\s\S]    表示任意字符

   [\s\S]*   表示组合内部出现0次或者多次

   [a-z]     表示区间内任意字符

   [0-9]     表示区间内任意数字

   \u4e00-\u9fa5  表示中文

   |         逻辑或

   ()        分组

   {n,m}     表示最少匹配n次,最多匹配m次

   {n,}      最少匹配n次

   {n}       匹配n次

   [^X]      表示除了X外任意字符


2.常用的正则表达式


            /// <summary>
            /// 该方法校验手机号码是否正确
            /// </summary>
            /// <param name="phone">待校验的号码</param>
            /// <returns></returns>
            public static bool isPhoneNumber(string phone)
            {
                string pattern = @"^[1][3578][0-9]{9}$";
                if (Regex.IsMatch(phone, pattern))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            /// <summary>
            /// 该方法验证邮箱
            /// </summary>
            /// <param name="email">待校验的邮箱</param>
            /// <returns></returns>
            public static bool isEmail(string email)
            {
                string pattern = @"\w+@\w+(\.\w)+";
                if (Regex.IsMatch(email, pattern))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            /// <summary>
            /// 验证身份证号码
            /// </summary>
            /// <param name="id">待验证的身份证号码</param>
            /// <returns></returns>
            public static bool isIDCard(string id)
            {
                string pattern = @"(^\d{15}$)|(^\d{17}([0-9]|X))";
                if (Regex.IsMatch(id,pattern))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            /// <summary>
            /// 验证qq号
            /// </summary>
            /// <param name="qq">待验证的qq号 </param>
            /// <returns></returns>
            public static bool isQQ(string qq)
            {
                string pattern = @"^[1-9]{1}\d{7,9}$";
                if (Regex.IsMatch(qq, pattern))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            /// <summary>
            /// 验证账号
            /// </summary>
            /// <param name="number">待验证的账号</param>
            /// <returns></returns>
            public static bool isAcountNumber(string number)
            {
                string pattern = @"^[a-zA-z]{1}[a-z0-9A-Z]{7,9}";
                if (Regex.IsMatch(number, pattern))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            /// <summary>
            /// 验证座机号码
            /// </summary>
            /// <param name="telnumber">待验证座机号码</param>
            /// <returns></returns>
            public static bool isTelNumber(string telnumber)
            {
                string pattern = @"^[0-9]{3}(-|[0-9]{1})\d{7}$";
                if (Regex.IsMatch(telnumber, pattern))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            /// <summary>
            /// 验证中文
            /// </summary>
            /// <param name="chinese">待验证中文</param>
            /// <returns></returns>
            public static bool isChinese(string chinese)
            {
                string pattern = @"[\u4e00-\u9fa5]+";
                if (Regex.IsMatch(chinese, pattern))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            /// <summary>
            /// 验证日期
            /// </summary>
            /// <param name="date">待验证日期</param>
            /// <returns></returns>
            public static bool isDate(string date)
            {
                string pattern = @"[0][13578]|[1][02]月([0][0-9]{1}|[1][0-9]{1}|[2][0-9]{1}|[3][01])日|[0][2469]|[11]月([0][0-9]{1}|[1][0-9]{1}|[2][0-9]{1}|[30])日|[2]月([0][0-9]{1}|[1][0-9]{1}|[2][0-9]{1})日";
                if (Regex.IsMatch(date, pattern))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }

原创粉丝点击