码迷,mamicode.com
首页 > Windows程序 > 详细

C# 正则表达式

时间:2015-06-30 20:21:42      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:

谈到C#正则表达式,标题还是有点偏了,正则表达式是所有语言都支持,不仅仅是C#,但是正则表达式的定义确实变化多样,不能表达式实现不同效果:

正则表达式的基础知识:

/******************************************常用元字符********************************************************/

代码说明
. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线或汉字
\s 匹配任意的空白符
\d 匹配数字
\b 匹配单词的开始或结束
^ 匹配字符串的开始
$ 匹配字符串的结束

 

 

 

 

 

 

 

 

/*******************************************常用限制符******************************************************/

代码/语法说明
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次

 

 

 

 

 

 

 

 

/*******************************************常用反义词*******************************************************/

代码/语法说明
\W 匹配任意不是字母,数字,下划线,汉字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符

 

 

 

 

 

 

 

 

 /******************************************实用码参考********************************************************/

正则表达式常用的功能点:

1、匹配元素抓取想要的结果,一般用于数据采集和网页分析;

2、数据验证;

简单举例说明正则表达式用处:

代码实现功能说明:
验证用户输入数据格式是:23:15-23:00或者23:15-23:00;23:15-23:00;23:15-23:00 这样的数据格式

代码如下:(正则表达式是重点)

 static void Main(string[] args)
        {
            MatchCollection martcollcect = new Regex(@"(^\d{2}:\d{2}-\d{2}:\d{2};$)").Matches("23:15-25:16;23:15-25:16;23:15-25:16");
            bool resultBook = RegexCheckTime("23:15-25:16;23:15-25:16;23:15-25:16");
            resultBook = RegexCheckTime("23:15-23:16;as:15-23:16;23:15-23:16");
            resultBook = RegexCheckTime("23:15-23:16;23:15-23:16;23:15-22:16");
            resultBook = RegexCheckTime("23:15-23:16");
          
        }

        /// <summary>
        /// 验证时间格式是:23:15-25:16;03:15-25:16模式
        /// </summary>
        /// <param name="inputcontext"></param>
        /// <returns></returns>
        public static bool RegexCheckTime(string inputcontext)
        {
            string regparm = @"^(([0-1]\d|2[0-3]):([0-5]\d)-([0-1]\d|2[0-3]):([0-5]\d);)*([0-1]\d|2[0-3]):([0-5]\d)-([0-1]\d|2[0-3]):([0-5]\d)$";
            Regex rg = new Regex(regparm);
            return rg.IsMatch(inputcontext);
        }

 

正则参考语法:
  http://www.cnblogs.com/youring2/archive/2009/11/07/1597786.html

 

C# 正则表达式

标签:

原文地址:http://www.cnblogs.com/xibei666/p/4611321.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!