- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C#正则表达式快速入门
涉及的基本的类
??正则表达式在英文中写作(Regular Expression),根据正则表达式的使用范围和单词意思,.NET将其命名空间设置为System.Text.RegularExpressions;
在该命名空间内包括了8个基本的类:Capture、CaptureCollection、Group、GroupCollection、Match、MatchCollection、Regex和RegexCompilationInfo如图1所示;
图1 MSDN Library中正则表达式命名空间
Capture 用于单个表达式捕获结果 CaptureCollection 用于一个序列进行字符串捕获 Group 表示单个捕获的结果 GroupCollection 表示捕获组的集会 Match 表示匹配单个正则表达式结果 MatchCollection 表示通过迭代方式应用正则表达式到字符串中 Regex 表示不可变的正则表达式 RegexCompilationInfo 将编译正则表达式需要提供信息
[注意]????本文属于初学正则表达式的入门文章,对于高级的分组(Group)及其涉及语法等在这里不做介绍;正则表达式基础知识
基本语法
????在正则表达式中拥有一套自己的语法规则,常见语法包括;字符匹配、重复匹配、字符定位、转义匹配和其他高级语法(字符分组、字符替换和字符决策);
????字符匹配语法:
字符语法 语法解释 语法例子 \d 匹配数字(0~9) ‘\d’匹配8,不匹配12; \D 匹配非数字 ‘\D’匹配c,不匹配3; \w 匹配任意单字符 ‘\w\w’ 匹配A3,不匹配@3; \W 匹配非单字符 ‘\W’匹配@,不匹配c; \s 匹配空白字符 ‘\d\s\d’匹配3 d,不匹配abc; \S 匹配非空字符 ‘\S\S\S’匹配A#4,不匹配3 d; . 匹配任意字符 ‘....’匹配A$ 5,不匹配换行; […] 匹配括号中任意字符 [b-d]匹配b、c、d, 不匹配e; [^…] 匹配非括号字符 [^b-z]匹配a,不匹配b-z的字符;
????重复匹配语法:
重复语法 语法解释 语法例子 {n} 匹配n次字符 \d{3}匹配\d\d\d,不匹配\d\d或\d\d\d\d {n,} 匹配n次和n次以上 \w{2}匹配\w\w和\w\w\w以上,不匹配\w {n,m} 匹配n次上m次下 \s{1,3}匹配\s,\s\s,\s\s\s,不匹配\s\s\s\s ? 匹配0或1次 5?匹配5或0,不匹配非5和0 + 匹配一次或多次 \S+匹配一个以上\S,不匹配非一个以上\S * 匹配0次以上 \W*匹配0以上\W,不匹配非N*\W
????字符定位语法:
重复语法 语法解释 语法例子 ^ 定位后面模式开始位置 ? $ 前面模式位于字符串末端 ? \A 前面模式开始位置 ? \z 前面模式结束位置 ? \Z 前面模式结束位置(换行前) ? \b 匹配一个单词边界 ? \B 匹配一个非单词边界 ?
????转义匹配语法:
转义语法 涉及字符(语法解释) 语法例子 “\”+实际字符 \ . * + ? | ( ) { }^ $ 例如:\\匹配字符“\” \n 匹配换行 ? \r 匹配回车 ? \t 匹配水平制表符 ? \v 匹配垂直制表符 ? \f 匹配换页 ? \nnn 匹配一个8进制ASCII ? \xnn 匹配一个16进制ASCII ? \unnnn 匹配4个16进制的Uniode? \c+大写字母 匹配Ctrl-大写字母 例如:\cS-匹配Ctrl+S
构造正则表达的方法
????构造正则表达式需要涉及Regex类,在Regex类中包括:IsMatch()、Replace()、Split()和Match的类;
(1) IsMatch()方法;
????IsMatch()方法实际上是一个返回Bool值得方法,如果测试字符满足正则表达式返回True否则返回False;
例1;判断是非成都地区电话号码合法;分析:成都地区电话号码组成028********,前面为固定区号028,后面满足8位数字;设计正则表达式:028\d{8}(解释:028区号固定,后面为8个数字\d组成);程序代码,如图2所示:
图2 “例1” IsMatch方法是用例
(2) Replace()方法;
????Replace()方法实际上是一种替换
您可能关注的文档
最近下载
- 居间助贷代理合同协议.docx VIP
- 塑料制品 挥发性有机化合物和半挥发性有机化合物的测定 热脱附气相色谱质谱法.docx VIP
- 最新CQI-27铸造系统评估表 第二版(2023).XLSX VIP
- (推荐!)GB 45673-2025《危险化学品企业安全生产标准化通用规范》之“5.2 安全生产责任制”审核检查单(2025A0).docx VIP
- NB∕T 32037-2017 光伏发电建设项目文件归档与档案整理规范.pdf VIP
- 个人房屋租赁合同范本(免费)最新.pdf VIP
- 无刷伺服驱动器XVy-EV 中文说明书.pdf
- 实施指南《GB15979 - 2002一次性使用卫生用品卫生标准》实施指南.pptx VIP
- 医院培训课件:《PICC置管与护理》.pptx
- 个人收入证明模版word编辑版.doc VIP
文档评论(0)