C#正则表达式整理备忘

上传人:宝路 文档编号:6866635 上传时间:2017-10-08 格式:DOC 页数:8 大小:66.50KB
返回 下载 相关 举报
C#正则表达式整理备忘_第1页
第1页 / 共8页
C#正则表达式整理备忘_第2页
第2页 / 共8页
C#正则表达式整理备忘_第3页
第3页 / 共8页
C#正则表达式整理备忘_第4页
第4页 / 共8页
C#正则表达式整理备忘_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《C#正则表达式整理备忘》由会员分享,可在线阅读,更多相关《C#正则表达式整理备忘(8页珍藏版)》请在金锄头文库上搜索。

1、C#正则表达式整理备忘 (1) “”符号 “”虽然并非 C#正则表达式的“成员”,但是它经常与 C#正则表达式出双入对。“”表示,跟在它后面的字符串是个“逐字字符串”,不是很好理解,举个例子,以下两个声明是等效的: string x=D:My HuangMy Doc; string y = D:My HuangMy Doc; 事实上,如果按如下声明,C#将会报错,因为“”在 C#中用于实现转义,如“n”换行: string x = D:My HuangMy Doc;(2) 基本的语法字符。 d 0-9 的数字 D d 的补集(以所以字符为全集,下同),即所有非数字的字符 w 单词字符,指大小写

2、字母、0-9 的数字、下划线 W w 的补集 s 空白字符,包括换行符n、回车符r、制表符t、垂直制表符v、换页符f S s 的补集 . 除换行符n 外的任意字符 匹配内所列出的所有字符 匹配非内所列出的字符 下面提供一些简单的示例:1. string i = n;2. string m = 3;3. Regex r = new Regex(D);4. /同 Regex r = new Regex(D);5. /r.IsMatch(i)结果:true6. /r.IsMatch(m)结果:false7. 8. string i = %;9. string m = 3;10. Regex r =

3、new Regex(a-z0-9);11. /匹配小写字母或数字字符12. /r.IsMatch(i)结果:false13. /r.IsMatch(m)结果:true(3) 定位字符“定位字符”所代表的是一个虚的字符,它代表一个位置,你也可以直观地认为“定位字符”所代表的是某个字符与字符间的那个微小间隙。 表示其后的字符必须位于字符串的开始处$ 表示其前面的字符必须位于字符串的结束处b 匹配一个单词的边界B 匹配一个非单词的边界另外,还包括:A 前面的字符必须位于字符处的开始处,z 前面的字符必须位于字符串的结束处,Z前面的字符必须位于字符串的结束处,或者位于换行符前下面提供一些简单的示例:1

4、. string i = Live for nothing,die for something;2. Regex r1 = new Regex(Live for nothing,die for something$);3. /r1.IsMatch(i) true4. Regex r2 = new Regex(Live for nothing,die for some$);5. /r2.IsMatch(i) false6. Regex r3 = new Regex(Live for nothing,die for some);7. /r3.IsMatch(i) true8. 9. string

5、i = Live for nothing,10. die for something;/多行11. Regex r1 = new Regex(Live for nothing,die for something$);12. Console.WriteLine(r1 match count: + r1.Matches(i).Count);/013. Regex r2 = new Regex(Live for nothing,die for something$, RegexOptions.Multiline);14. Console.WriteLine(r2 match count: + r2.

6、Matches(i).Count);/015. Regex r3 = new Regex(Live for nothing,rndie for something$);16. Console.WriteLine(r3 match count: + r3.Matches(i).Count);/117. Regex r4 = new Regex(Live for nothing,$);18. Console.WriteLine(r4 match count: + r4.Matches(i).Count);/019. Regex r5 = new Regex(Live for nothing,$,

7、RegexOptions.Multiline);20. Console.WriteLine(r5 match count: + r5.Matches(i).Count);/021. Regex r6 = new Regex(Live for nothing,rn$);22. Console.WriteLine(r6 match count: + r6.Matches(i).Count);/023. Regex r7 = new Regex(Live for nothing,rn$, RegexOptions.Multiline);24. Console.WriteLine(r7 match c

8、ount: + r7.Matches(i).Count);/025. Regex r8 = new Regex(Live for nothing,r$);26. Console.WriteLine(r8 match count: + r8.Matches(i).Count);/027. Regex r9 = new Regex(Live for nothing,r$, RegexOptions.Multiline);28. Console.WriteLine(r9 match count: + r9.Matches(i).Count);/129. Regex r10 = new Regex(d

9、ie for something$);30. Console.WriteLine(r10 match count: + r10.Matches(i).Count);/031. Regex r11 = new Regex(die for something$, RegexOptions.Multiline);32. Console.WriteLine(r11 match count: + r11.Matches(i).Count);/133. Regex r12 = new Regex();34. Console.WriteLine(r12 match count: + r12.Matches(

10、i).Count);/135. Regex r13 = new Regex($);36. Console.WriteLine(r13 match count: + r13.Matches(i).Count);/137. Regex r14 = new Regex(, RegexOptions.Multiline);38. Console.WriteLine(r14 match count: + r14.Matches(i).Count);/239. Regex r15 = new Regex($, RegexOptions.Multiline);40. Console.WriteLine(r1

11、5 match count: + r15.Matches(i).Count);/241. Regex r16 = new Regex(Live for nothing,r$ndie for something$, RegexOptions.Multiline);42. Console.WriteLine(r16 match count: + r16.Matches(i).Count);/143. /对于一个多行字符串,在设置了 Multiline 选项之后,和$将出现多次匹配。44. 45. string i = Live for nothing,die for something;46. s

12、tring m = Live for nothing,die for some thing;47. Regex r1 = new Regex(bthingb);48. Console.WriteLine(r1 match count: + r1.Matches(i).Count);/049. Regex r2 = new Regex(thingb);50. Console.WriteLine(r2 match count: + r2.Matches(i).Count);/251. Regex r3 = new Regex(bthingb);52. Console.WriteLine(r3 ma

13、tch count: + r3.Matches(m).Count);/153. Regex r4 = new Regex(bfor somethingb);54. Console.WriteLine(r4 match count: + r4.Matches(i).Count);/155. /b 通常用于约束一个完整的单词56. (4) 重复描述字符“重复描述字符”是体现 C#正则表达式“很好很强大”的地方之一:n 匹配前面的字符 n 次n, 匹配前面的字符 n 次或多于 n 次n,m 匹配前面的字符 n 到 m 次? 匹配前面的字符 0 或 1 次+ 匹配前面的字符 1 次或多于 1 次* 匹

14、配前面的字符 0 次或式于 0 次以下提供一些简单的示例:1. string x = 1024;2. string y = +1024;3. string z = 1,024;4. string a = 1;5. string b=-1024;6. string c = 10000;7. Regex r = new Regex(+?1-9,?d3$);8. Console.WriteLine(x match count: + r.Matches(x).Count);/19. Console.WriteLine(y match count: + r.Matches(y).Count);/110.

15、 Console.WriteLine(z match count: + r.Matches(z).Count);/111. Console.WriteLine(a match count: + r.Matches(a).Count);/012. Console.WriteLine(b match count: + r.Matches(b).Count);/013. Console.WriteLine(c match count: + r.Matches(c).Count);/014. /匹配 1000 到 9999 的整数。(5)择一匹配 C#正则表达式中的 (|) 符号似乎没有一个专门的称谓,姑且称之为“择一匹配”吧。事实上,像a-z也是一种择一匹配,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号