- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章字符串与正则表达式
第5章 字符串/正则表达式 概述 C#对功能完全的string类型提供了内置支持。更重要的是,C#把字符串也当成对象,封装了所有字符串所应有的操作、排序和搜索方法。 复杂的字符串处理和模式匹配依靠正则表达式(Regular Expression)的帮助。C#将正则表达式语法的强大与复杂同完全的面向对象设计结合了起来。 本章要点 5.1 字符串 5.2 正则表达式 5.1 字符串 在C#设计中,通常使用的是框架类型的C#别名(比如用int代替Int32),但是仍然可以自由使用底层类型。所以C#程序员可以互换地使用string(小写)和低层框架类型String(大写)。 5.1 字符串 String类的声明为: 每个string对象都是一个不变的(immutable)Unicode字符序列。String不变这一事实意味着看似要改变字符串的方法实际上返回的是一个修改后的副本,原字符串在内存中是不变的,直到被垃圾回收。 例子:String.sln 创建字符串 创建字符串最常用的方式是把一对双引号括起来的字符串,称为字符串字面值(string literal),赋给一个用户定义的string类型变量: string newString = “This is a string”; 引号括起来的字符串可以包括转义字符,如”\n”或”\t”,都以反斜线开始。 创建字符串 字符串也可以用原样(verbatim)字符串字面值创建,以@符号开头。这样string构造方法就知道字符串应照原样使用,即使它要跨行或者含有转义字符。因此,下面两个字符串是等价的: 创建字符串 注意:如果在一个原样字符串中还有双引号,必须将它们转义,使编译器知道原样字符串在何处结束。 ToString()方法 创建字符串的另一常用方式是调用某对象的ToString()方法,并将结果赋值给一个字符串变量。 调用myInteger.ToString()将返回一个string对象,并赋值给integerString。 操作字符串 string类提供了大量用于比较、搜索和操作的方法,如下所示: 例子:StringTester.sln 操作字符串 操作字符串 查找子串 String类提供了一个重载方法SubString(),用于在字符串中提取子串。该方法所有版本均有一个索引,表示提取的起始位置,其中一个版本还有一个索引表示结束位置。 例子:SubString.sln 分离字符串 对上面的问题有一个更好的解决方案,那么就是使用String的Split()方法,其作用是将字符串分成多个子串。使用Split()时,传入一个分隔符数组,然后方法返回一个子串数组。 例子:Split.sln 操作动态字符串 system.Text.StringBuilder类的作用是创建和修改字符串。下面是此类的重要成员: 操作动态字符串 与String不同的是,StringBuilder是可变的,也就是说,修改时改的是实际原字符串,而不是副本。 例子:StringBuilder.sln 5.2 正则表达式 正则表达式是一种用来描述和操作文本的强大语言。正则表达式主要用于字符串,即一组字符。这往往意味着一整篇文本文档。 对字符串应用正则表达式的结果,要么是返回的子串,要么返回一个新字符串,表示原字符串某部分的修改。(因为字符串是不可变的,因此用正则表达式也改变不了)。 5.2 正则表达式 正则表达式由两类字符组成:字面值(literal)和元字符(metacharacter)。字面值就是我们要在目标字符串中匹配的字符。而元字符则是用作正则表达式分析器命令的特殊称号。分析器是负责理解、分析正则表达式的引擎。 5.2 正则表达式 例如,如下正则表达式: ^(From|To|Subject|Date): 其意义是与”From”或”To”或”Subject”或”Date”匹配的子串,只要子串以换行(^)开始,以冒号(:)结束。 补字符(^)在这里的作用是告诉正则表达式FXQ,要搜索的字符串必须以换行开始。”From”和”To”等字母就是字面值,而元字符包括左右括号和竖线(|),用来将字面值分组,并表示各种匹配选择。(^也是元字符,用来表示一行开始)。 因此这一行应读成:匹配这样的字符串,从换行符开始,后面是4个字面值字符串From,To,Subject或Date中的一个,最后有一个冒号。 使用正则表达式:Regex .NET框架提供了用于正则表达式匹配和替换的面向对象方式。 名字空间System.Text.RegularExpression是所有与正则表达式相关的.NET框架对象的大本营。用于正则表达式支持核心类是Regex
您可能关注的文档
- 第九章结构体共、用体与枚举类型.ppt
- 第九章建筑剖面图的绘制.ppt
- 第九章节目主持人.ppt
- 第九章采购销售库存管理.ppt
- 第九组–人力资源研究方法.ppt
- 第九章电子商与务现代物流.ppt
- 第九讲bis︰企业行为识别系统与设计-之二.ppt
- 第九讲︰怎样上好一节课(备课写教案、上课.作业).ppt
- 第九讲经济全化球及其后果.ppt
- 第九课西欧和本日经济的发展.ppt
- 2024年丰都县公务员考试行测真题完整答案详解.docx
- 2024年哈尔滨市公务员考试行测试卷历年真题及答案详解1套.docx
- 2024年中卫市公务员考试行测试卷历年真题(含答案详解).docx
- 2024年吕梁市公务员考试行测试卷历年真题附答案详解(黄金题型).docx
- 2024年兰州市公务员考试行测真题及答案详解(新).docx
- 2024年中山市公务员考试行测真题完整参考答案详解.docx
- 2024年商洛市公务员考试行测试卷历年真题附答案详解.docx
- 2024年保山市公务员考试行测真题及一套答案详解.docx
- 2024年咸阳市公务员考试行测真题精编答案详解.docx
- 2024年晋中市公务员考试行测试卷历年真题及答案详解(易错题).docx
文档评论(0)