网站大量收购闲置独家精品文档,联系QQ:2885784924

C正则表达式整理备忘.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C正则表达式整理备忘

C#正则表达式整理备忘 (1) “@”符号? “@”虽然并非C#正则表达式的“成员”,但是它经常与C#正则表达式出双入对。“@”表示,跟在它后面的字符串是个“逐字字符串”,不是很好理解,举个例子,以下两个声明是等效的:? string x=D:\\My Huang\\My Doc;? string y = @D:\My Huang\My Doc;? 事实上,如果按如下声明,C#将会报错,因为“\”在C#中用于实现转义,如“\n”换行:? string x = D:\My Huang\My Doc; (2) 基本的语法字符。? \d??????? 0-9的数字? \D??????? \d的补集(以所以字符为全集,下同),即所有非数字的字符? \w?????? 单词字符,指大小写字母、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)结果:true 6.??? //r.IsMatch(m)结果:false 7.??? ? 8.??? string?i?=?%; 9.??? string?m?=?3; 10. Regex?r?=?new?Regex([a-z0-9]); 11. //匹配小写字母或数字字符 12. //r.IsMatch(i)结果:false 13. //r.IsMatch(m)结果:true (3) 定位字符 “定位字符”所代表的是一个虚的字符,它代表一个位置,你也可以直观地认为“定位字符”所代表的是某个字符与字符间的那个微小间隙。 ^??????? 表示其后的字符必须位于字符串的开始处 $??????? 表示其前面的字符必须位于字符串的结束处 \b?????? 匹配一个单词的边界 \B????? 匹配一个非单词的边界 另外,还包括:\A? 前面的字符必须位于字符处的开始处,\z? 前面的字符必须位于字符串的结束处,\Z? 前面的字符必须位于字符串的结束处,或者位于换行符前 下面提供一些简单的示例: 1.??? string?i?=?Live?for?nothing,die?for?something; 2.??? Regex?r1?=?new?Regex(^Live?for?nothing,die?for?something$); 3.??? //r1.IsMatch(i)?true 4.??? Regex?r2?=?new?Regex(^Live?for?nothing,die?for?some$); 5.??? //r2.IsMatch(i)?false 6.??? Regex?r3?=?new?Regex(^Live?for?nothing,die?for?some); 7.??? //r3.IsMatch(i)?true 8.??? ? 9.??? string?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);//0 13. Regex?r2?=?new?Regex(^Live?for?nothing,die?for?something$,?RegexOptions.Multiline); 14. Console.WriteLine(r2?match?count:?+?r2.Matches(i).Count);//0 15. Regex?r3?=?new?Regex(^Live?for?nothing,\r\ndie?for?something$); 16. Console.WriteLine(r3?match?count:?+?r3.Matches(i).Count);//1 17. Regex?r4?=?new?Regex(^Live?for?nothing,$); 18. Console.WriteLine(r4?match?count:?+?r4.Matche

文档评论(0)

ipad0d + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档