作者:empty 页数:254 出版社:empty |
内容简介文本操作几乎存在于任何应用程序中,合理地处理文本可以提高应用程序的性能,本书详细阐述了.NET Framework处理文本的方式, 学习如何使用Strng类和Sting Builder类本书适合于从事.NET开发, 并想在应用程序中提高文本处理效率的C*开发人员。
本书中文简体字版由英国乐思出版公司授权清华大学出版社出版,未经出版者书面许可,不得在.NET中构建字符串, 讲述在字符串和其他数据类型之间转换时所涉及的一些问题, 并论述了如何用不同语言显示文本。本书还重点介绍了如何使用正则表达式匹配文本模式,描述了分组、替换和反向引用, 并讨论了如何构建自己的正则表达式模式, 以匹配具体的数据类型。最后, 附录列出了String英和StringBuilder类的方法、属性和构造函数, 以及许多正美表达式语法、选项和特殊字符,以任何方式复制或抄装本书内容,
前言本书主要讲述.NET Framework处理文本, 存储文本的不同方式, 修改字符串的结果是什么, 为什么需要一个单独的StringBuilder类, .NET Framework把所有文本都存储为Unicode的意义是什么。本书也讲解操作文本的实现过程, 同时解释各种可用的方法,比较它们的性能,以便您在选择操作文本的方式时做出更好的选择,在C#中处理文木不像在C++中处理文本那样复杂, 但通过面向对象的架构, 您可以控制处理String对象的方式, 重要的是要理解.NET Framework处理文本的方式。处理字符串的一个最重要的类是System.Text Regular Expressions.Regex。这个类使所有的.NET开发人员能够使用正则表达式提供的强大的模式匹配语言。“匹配”的意思是检查一个字符户是否遵守一定的模式,是否包含我们预期的数据。通常这要比给一个方法传递字符串,然后捕获一个异常(例如用无效数据更新数据库时发生的异常)更有效一些,本书的第5~7章将指导您学习正则表达式语言,解释每个组成部分的含义,以及如何构建复杂的表达式,以匹配文本中更复杂的模式。编写很多行代码。如果假设电子邮件地址已经存放在my Input字符串变量中, 那么可以用下面这行代码生成一个布尔值,指明是否进行了成功的匹配:没有正则表达式,即使像检查是否正确输入了电子邮件地址这样简单的任务也需要这看起来非常深奥,但您读完本书后,会发现它非常简单。为了简便起见,这个表达式没有对my Input变量做足够的限制(第7章会这样做) , 但它指定了下面的模式:地址必须以字母开始,后面跟一个或多个字母、下划线、数字、连字符或句点,也可以是它们的组合,然后是“@”,它后面是字母的一个或多个模式,再后面是一个或多个字母、数字或连字符的重复模式(后跟一个句点),并以一个2~4个字母的模式结束,例如,support@wrox.com就是一个电子邮件地址, 而support@wrox不是。这种模式匹配语言,因为饱们对该语言都有丰富的经验。
本书读者对象在Wrox参考手册系列丛书中, 这是第一本面向C#开发人员的书, 您可以查阅Wrox网站,其中介绍了C#参考手册系列中的其他书籍。任何在应用程序中使用文本的开发人员都可以从木书中获益。本书代码的运行环境为Microsoft CH, NETStandard Edition或更高版本, 但书中使用的代码和概念只适用于并只运行丁.NET Framework SDK本书内容提要本书讲解处理文本的各种方法,下面是各章内容的简介。第1章系统处理文本的方式本章解释.NET Framework处理文本的方式。讲述了各种较基础的内容, 如字符串如何在内存中存储。在解释了文本的存储方式后,您就会明白为什么考虑处理文本的方法是很重要的。木章会介绍一些有关MSIL(微软中间语言) 的知识, 但基本上是关文本的概述, 说明.NET中内存的处理和管理(因此还有字符中占用内存的持续时间) 。第2章String类和StringBuilder类本章将详述String类, 解释.NET中如何实现字符中。还将讲解StringBuilder类的工作原理,并比较这两个类的不同方法,了解执行某种操作的最快捷的方法是什么、学习Microsoft提供的共享源代码的CLI(公共语言基础结构) 实现方式, 以期了解不同方法快慢的原因,以及在什么环境下使用看起来慢一些的方法更为合适。第3章字符串转换本章讲述字符牢和其他数据类型之间的转换所涉及的问题,讨论在不同的区域如何以不同的方式表示不同的数据类型,如数字、日期/时间,以及如何处理这些情况,我们还会探讨在数组和集合中存储字符串的问题,以及如何更好地操作以这种方式存储的字符串。
本书内容提要
本书讲解处理文本的各种方法,下面是各章内容的简介。
第1章系统处理文本的方式
本章解释.NET Framework处理文本的方式。讲述了各种较基础的内容, 如字符串
如何在内存中存储。在解释了文本的存储方式后,您就会明白为什么考虑处理文本的
方法是很重要的。木章会介绍一些有关MSIL(微软中间语言) 的知识, 但基本上是关
文本的概述, 说明.NET中内存的处理和管理(因此还有字符中占用内存的持续时间) 。
第2章String类和StringBuilder类
本章将详述String类, 解释.NET中如何实现字符中。还将讲解StringBuilder类的
工作原理,并比较这两个类的不同方法,了解执行某种操作的最快捷的方法是什么、
学习Microsoft提供的共享源代码的CLI(公共语言基础结构) 实现方式, 以期了解不同
方法快慢的原因,以及在什么环境下使用看起来慢一些的方法更为合适。
第3章字符串转换
本章讲述字符牢和其他数据类型之间的转换所涉及的问题,讨论在不同的区域如何
以不同的方式表示不同的数据类型,如数字、日期/时间,以及如何处理这些情况,我
们还会探讨在数组和集合中存储字符串的问题,以及如何更好地操作以这种方式存储
的字符串。
第4章国际化
NET Framework中所有的文本都以16位的Unicode编码存放。本章对此进行了说
明,并告诉您现在的字符至少以16位存储,此时该采取什么施。我们将详细地讲述
区域和不同的区域表示文本的方法, 还将讲解如何操作char类型, 因为在Unicode中,
一个完整的字符可以由两个16位的char类型组成。本章会讨论如何以不同的语言来表
示文本,还将描述如何使用资源文件把应用程序中的文本保存在个位置,以使把它
们一次转换为另一种语言,
第5章正则表达式
完成使用String类的方法也能完成的工作, 在熟悉了语法后, 接着讲述该语言的一些独
本章介绍正则表达式匹配语言,如何使用正则表达式匹配文本模式。首先学习如何
特功能。然后创建一个正则表达式测试器应用程序,它是测试表达式的一个非常有用
的工具,
第6章正则表达式的高级概念
换和反向引用。分组允许表达式匹配成组的文本。这些组可以被捕状并赋子名称。反
上一章概述了匹配语言,而本章除了列举更多的表达式示例外,还将描述分组、梵
向引用可以用来提取前面的匹配, 再为一个HTML结束标记匹配对应的开始标记,
第7章正则表达式模式
本章详细介绍各种正则表达式模式,使用它们可以匹配具体的数据类型,如数字,
日期等,本章将讲解这些模式的构成方式,帮助您构建自己的模式。其中一个模式是
电子邮件地址验证程序,这是一个又长又复杂的表达式,非常有用.经过讲解,您就
会明白构建匹配许多文本模式的表达式是何等的简单,
附录
本书有5个附录。前两个附录用表格列出了String类和StringBuilder类的方法、成
性和构造两数。第3个附录包含了很多正表达式语法、选项和特殊的字符。第4个
附录是CSharp Today Web站点(http:/esharptoday.com) 上的一篇文章, 最后个录是
有关本书的支持信息和下载代码的信息。
第1章系统处理文本的方式….1
1.1.NET Framework.1
1.2文本是一种数据类型….4
1.1.1公共清言运行时-…
1.1.2NET Framework类库…
1.2.1CW的数据类型…
1.2.2字符和字符集…
1.2.3字符串数据类型….
文本存储……
1.3.1高速缓存技术-----
1.3.2内置…
1.3.3其他方法…
1.3.4.NET实现…
字符申操作…….
1.4.1连接字符串….
14.2从字符串中提取子串….
1.4.3比较字符串…
1.4.4字符申转换…
1.4.5格式化字符串…
1.5字符串用法….
String类和StringBuilder类…
C#字符串和正则表达式参与下册
2.3.2构建----.
2.3.3字符串的转文…
2.4.1长度和容量-.
2.4.2ToStringO方法.
2.5.1连接字符牢…-
2.5.3比较字符中…
2.6.1建东宁符串…
2.6.2标记…
2.6.3服倒子符甲次序.
2.6.4插 、除和替换…
3.7.1数组…
3.7.2 ArrayList对象.
3.7.3I Dictionary对象……
4.3.1Culturelnfo类.
4.3.3不要区分文化的操作…
4.4.1关于学符的必要信息….
4.4.2代理对….
4.4.3组合学符--.
5.2.1Regex Options枚革.
5.2.3IsMatchO) 方法-.
5.2.4 Re