摘要: 在中文分词的过程中需要将英文,数字,汉字分离,数字和英文就不用分割了,主要是将分离出来的汉字进行分词,下面的算法实现利用正则表达式分离汉字、英文、数字://获取中文string chRegS = @"[\u4e00-\u9fa5]+";Regex chRegR = new Regex(chRegS);Match chMacth = chRegR.Match(str);while(chMacth.Success){ CHresult.Add(chMacth.ToString()); chMacth = chMacth.NextMatch();}//英文string enReg 阅读全文
posted @ 2012-04-23 19:38 lijingpeng 阅读(4931) 评论(0) 推荐(0) 编辑
摘要: http://www.jb51.net/tools/zhengze.html微软的正则表达式教程System.Text.RegularExpressions.Regex类(MSDN)专业的正则表达式教学网站(英文)关于.Net下的平衡组的详细讨论(英文)Mastering Regular Expressions (Second Edition)下面摘要一些平时常用的:表1.常用的元字符代码说明.匹配除换行符以外的任意字符\w匹配字母或数字或下划线或汉字\s匹配任意的空白符\d匹配数字\b匹配单词的开始或结束^匹配字符串的开始$匹配字符串的结束表2.常用的限定符代码/语法说明*重复零次或更多次+ 阅读全文
posted @ 2012-04-23 15:30 lijingpeng 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 这篇将稍微深入一点探讨一下正则表达式分组,在.NET中正则表达式分组是用Match类来代表的。首先先看一段代码:public void ShowStructure(){ //要匹配的字符串 string text = "1A 2B 3C 4D 5E 6F 7G 8H 9I 10J 11Q 12J 13K 14L 15M 16N ffee80 #800080"; //正则表达式 string pattern = @"((/d+)([a-z]))/s+"; //使用RegexOptions.IgnoreCase枚举值表示不区分大小写 Regex r = ne 阅读全文
posted @ 2012-04-23 15:10 lijingpeng 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 对于正则表达式的应用,基本上可以分为验证、提取、分割和替换。仅仅利用Regex类就可以实现验证和简单替换。利用Regex类实现验证经历2009年的备案和DNS停止解析风波之后,大部分的带有反馈性的网站和论坛都对一些敏感词进行了过滤,包含有这类敏感词的文章要么内容被替换要么被禁止发表,利用Regex类就可以实现这个功能,下面是一个例子:public void IsMatchDemo(){ string source = "刘备ABC关羽ABc张飞Abc赵云abc诸葛亮aBC孙权abC周瑜AbC鲁肃aBc曹操许攸郭嘉需晃袁绍"; Regex regex = new Regex( 阅读全文
posted @ 2012-04-23 15:01 lijingpeng 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 在.NET中提供了对正则表达式的支持,并且提供了相关的类,分别有:Regex、Match、Group、Capture、RegexOptions、MatchCollection、GroupCollection、CaptureCollection。它们之间的关联如下:对它们描述如下:Regex:正则表达式类,代表了一个不可变的正则表达式。Match:代表了Regex类的实例的一次匹配结果,可以通过Regex的Match()实例方法返回一个Match的实例。MatchCollection:代表了Regex类的实例的所有匹配结果,可以通过Regex的Matches()实例方法返回一个MatchColl 阅读全文
posted @ 2012-04-23 14:55 lijingpeng 阅读(354) 评论(0) 推荐(0) 编辑