C#字符串处理类
首先介绍一下常用的几个功能:
Compare(str1,str2)——比较两个字符串 str1,str2的大小,如果大于返回正数,等于返回0,小于返回负数!
IndexOf——定位字符串中第一次出现某个给定字符串的位置
PadLeft和PadRight——在字符串的开始和结尾用指定的字符填充字符串
ToLower和ToUpper把字符串转换为小写或大写形式
Trim——删除首尾空白
String.Replace——用指定的字符替换字符串中的指定字符。
C#中字符串的建立过程:
例如定义变量 strT="Welcome to ";
strT+="www.csdn.net";
程序首先创建一个System.String 类型的对象并初始化为“Welcome to”。此时编译程度会分配足够的内存来保存这个文本串。并用变量strT来表示这个实例。当执行strT+="www.csdn.net"时,系统会创建一个新的实例,并分配足够的内存来保存复合后的文本。然后用变量strT来表示这个新的字符
串,就的字符串被撤消。当要进行大规模的字符替换与调整操作时,使用字符串来操作将严重影响性能。在这中情况下就可以用System.Text.StringBuilder类。
StringBuilder类并没有String 类的功能强大,只提供基本的替换和添加和删除字符串中的文本,但它的工作效率非常高,当定义StringBuilder对象时可以指定内存的内存容量,如果不指定系统就会根据对象初始化时的字符串长度来确定。它有两个主要参数Length和Capacity分别表示字符串的实际长度和字符串占据的内存空间长度。对字符串的修改就是在这个内存中进行的,大大提高了添加和替换的的效率。
如定义:StringBuilder sb=new StringBuilder("Hello,Welcome",100);//初始化对象并设置初始容量为100
sb.Append(" to www.csdn.net");
sb.Replace(old,new);//将old替换为new,作用与String.Replace()一样只是不需要在过程中复制字符。
StringBuilder的成员:
StringBuilder sb=new StringBuilder("www.csdn.net");//定义初值为www.csdn.net的对象。
StringBuilder sb=new StringBuilder(20);初始化容量为20的空对象。
另外StringBuilder还有MaxCapacity属性用来限定对象可以使用的最大容量。默认大约是int.MaxValue(20亿)
可以在使用过程中定义sb.MaxCapacity=value;
sb.Append(),给当前字符串追加字符串。
sb.AppendFormat()——添加特定格式的字符串
sb.Insert()——插入一个子字符串
sb.Remove()——从当前字符串删除字符
sb.Replace()——替换字符串中指定的字符
sb.ToString()——将sb转化为String 对象