1 / 8
文档名称:

正则表达式概述.doc

格式:doc   大小:91KB   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

正则表达式概述.doc

上传人:2072510724 2018/1/18 文件大小:91 KB

下载得到文件列表

正则表达式概述.doc

相关文档

文档介绍

文档介绍:字符串概述

系统如果在编译的时候就知道一个字符串中的值是什么,C#编译器将会将其值放入内置池中。内置池内的数据,系统可以反复进行引用,而不会浪费额外的内存,这样可以提高系统性能。内置池实现为散列表(hashtable),比较和搜索字符串更有效。内置池节省字符串存储空间,如果将一个字符串常量赋给几个变量,则每个变量引用内置池中相同的常量,而不是string类的几个不同实例。使用StringBuild类创建的字符串可以使用Intern()方法手工添加到内置池中。对于固定不变的字符串请用const声明,这将有助于提高系统效率(尽管很少)。
eg. string a="123" ; string b="123" //a和b都引用内置池内的"123",编译器自动优化
需要另外创建新的'"123"对象,可以用Clone()方法, string b=();
string a;a="123"//"123"也会被放入内置池,和上面的声明一样
string a="123",b="456";string c=a+b;//c也会被内置,内置池中将有"123","456","123456"

通过“\”对特殊字符进行转义。可以在字符串前加上"@"来取消转义。eg. string a=@"123 \t 1234";

使用string类每次进行字符串操作时,都会创建一个新的string对象,stringBulid类解决了在对字符串进行重复修改的过程中创建大量对象的问题,它以char为单位向字符串分配空间。Append()方法将常量加到字符串结尾,不会重复创建原字符串对象。但对于单一的连接不需要创建StringBuild,这时候创建对象的花销远大于得到的收益。对于反复的字符串操作就需要StringBuild。
正则表达式()
:
\d 0-9的数字
\D \d的补集(以所以字符为全集,下同),即所有非数字的字符
\w 单词字符,指大小写字母、0-9的数字、下划线
\W \w的补集
\s 空白字符,包括换行符\n、回车符\r、制表符\t、垂直制表符\v、换页符\f
\S \s的补集
. 除换行符\n外的任意字符
[…] 匹配[]内所列出的所有字符
[^…] 匹配非[]内所列出的字符

^ 表示其后的字符必须位于字符串的开始处
$ 表示其前面的字符必须位于字符串的结束处
\b 匹配一个单词的边界
\B 匹配一个非单词的边界
\A 前面的字符必须位于字符处的开始处
\z 前面的字符必须位于字符串的结束处
\Z 前面的字符必须位于字符串的结束处,或者位于换行符前

{n} 匹配前面的字符n次
{n,} 匹配前面的字符n次或多于n次
{n,m} 匹配前面的字符n到m次
? 匹配前面的字符0或1次
+ 匹配前面的字符1次或多于1次
* 匹配前面的字符0次或式于0次
4."|"表示选择
(ab|xy)表示匹配ab或者xy
高级概念
:()
:(?:)
:(?<name>)
捕获的概念:括号内匹配的字符串作