首先介紹一下常用的幾個功能:
Compare(str1,str2)——比較兩個字符串 str1,str2的大小,如果大於返回正數,等於返回0,小於返回負數!
IndexOf——定位字符串中第一次出現某個給定字符串的位置
PadLeft和PadRight——在字符串的開始和結尾用指定的字符填充字符串
ToLower和ToUpper把字符串轉換為小寫或大寫形式
Trim——刪除首尾空白
String.Replace——用指定的字符替換字符串中的指定字符。
C#中字符串的建立過程:
例如定義變量 strT="Welcome to ";
strT+="www.sinory.com";
程序首先創建一個System.String 類型的對象並初始化為“Welcome to”。此時編譯程度會分配足夠的內存來保存這個文本串。並用變量strT來表示這個實例。當執行strT+="www.sinory.com"時,系統會創建一個新的實例,並分配足夠的內存來保存復合後的文本。然後用變量strT來表示這個新的字符
串,就的字符串被撤消。當要進行大規模的字符替換與調整操作時,使用字符串來操作將嚴重影響性能。在這中情況下就可以用System.Text.StringBuilder類。
StringBuilder類並沒有String 類的功能強大,只提供基本的替換和添加和刪除字符串中的文本,但它的工作效率非常高,當定義StringBuilder對象時可以指定內存的內存容量,如果不指定系統就會根據對象初始化時的字符串長度來確定。它有兩個主要參數Length和Capacity分別表示字符串的實際長度和字符串占據的內存空間長度。對字符串的修改就是在這個內存中進行的,大大提高了添加和替換的的效率。
如定義:StringBuilder sb=new StringBuilder("Hello,Welcome",100);//初始化對象並設置初始容量為100
sb.Append(" to www.sinory.com");
sb.Replace(old,new);//將old替換為new,作用與String.Replace()一樣只是不需要在過程中復制字符。
StringBuilder的成員:
StringBuilder sb=new StringBuilder("www.sinory.com");//定義初值為www.sinory.com的對象。
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 對象