1. 程式人生 > >C#字串用法集合

C#字串用法集合

staticvoid Main(string[] args)
{
           
string s ="";
           
//(1)字元訪問(下標訪問s[i])            s ="ABCD";
            Console.WriteLine(s[
0]); // 輸出"A";            Console.WriteLine(s.Length); // 輸出4            Console.WriteLine();

           
//(2)打散為字元陣列(ToCharArray)            s ="ABCD";
           
char[] arr = s.ToCharArray(); // 把字串打散成字元陣列{'A','B','C','D'}            Console.WriteLine(arr[0]); // 輸出陣列的第一個元素,輸出"A"            Console.WriteLine();

           
//(3)擷取子串(Substring)            s ="ABCD";
Console.WriteLine(s.Substring(
1)); // 從第2位開始(索引從0開始)擷取一直到字串結束,輸出"BCD"            Console.WriteLine(s.Substring(
1, 2)); // 從第2位開始擷取2位,輸出"BC"            Console.WriteLine();

           
//(4)匹配索引(IndexOf())            s ="ABCABCD";
            Console.WriteLine(s.IndexOf(
'A')); // 從字串頭部開始搜尋第一個匹配字元A的位置索引,輸出"0"            Console.WriteLine(s.IndexOf("BCD")); // 從字串頭部開始搜尋第一個匹配字串BCD的位置,輸出"4"            Console.WriteLine(s.LastIndexOf(
'C')); // 從字串尾部開始搜尋第一個匹配字元C的位置,輸出"5"            Console.WriteLine(s.LastIndexOf("AB")); // 從字串尾部開始搜尋第一個匹配字串BCD的位置,輸出"3"            Console.WriteLine(s.IndexOf('E')); // 從字串頭部開始搜尋第一個匹配字串E的位置,沒有匹配輸出"-1";            Console.WriteLine(s.Contains("ABCD")); // 判斷字串中是否存在另一個字串"ABCD",輸出true            Console.WriteLine();

           
//(5)大小寫轉換(ToUpper和ToLower)            s ="aBcD";
            Console.WriteLine(s.ToLower());
// 轉化為小寫,輸出"abcd"            Console.WriteLine(s.ToUpper()); // 轉化為大寫,輸出"ABCD"            Console.WriteLine();

           
//(6)填充對齊(PadLeft和PadRight)            s ="ABCD";
            Console.WriteLine(s.PadLeft(
6, '_')); // 使用'_'填充字串左部,使它擴充到6位總長度,輸出"__ABCD"            Console.WriteLine(s.PadRight(6, '_')); // 使用'_'填充字串右部,使它擴充到6位總長度,輸出"ABCD__"            Console.WriteLine();

           
//(7)截頭去尾(Trim)            s ="__AB__CD__";
            Console.WriteLine(s.Trim(
'_')); // 移除字串中頭部和尾部的'_'字元,輸出"AB__CD"            Console.WriteLine(s.TrimStart('_')); // 移除字串中頭部的'_'字元,輸出"AB__CD__"            Console.WriteLine(s.TrimEnd('_')); // 移除字串中尾部的'_'字元,輸出"__AB__CD"            Console.WriteLine();

           
//(8)插入和刪除(Insert和Remove)            s ="ADEF";
            Console.WriteLine(s.Insert(
1, "BC")); // 在字串的第2位處插入字串"BC",輸出"ABCDEF"            Console.WriteLine(s);
            Console.WriteLine(s.Remove(
1)); // 從字串的第2位開始到最後的字元都刪除,輸出"A"            Console.WriteLine(s);
            Console.WriteLine(s.Remove(
0, 2)); // 從字串的第1位開始刪除2個字元,輸出"EF"            Console.WriteLine();

           
//(9)替換字元(串)(Replace)            s ="A_B_C_D";
            Console.WriteLine(s.Replace(
'_', '-')); // 把字串中的'_'字元替換為'-',輸出"A-B-C-D"            Console.WriteLine(s.Replace("_", "")); // 把字串中的"_"替換為空字串,輸出"A B C D"            Console.WriteLine();

           
//(10)分割為字串陣列(Split)——互逆操作:聯合一個字串靜態方法Join(seperator,arr[])            s ="AA,BB,CC,DD";
           
string[] arr1 = s.Split(','); // 以','字元對字串進行分割,返回字串陣列            Console.WriteLine(arr1[0]); // 輸出"AA"            Console.WriteLine(arr1[1]); // 輸出"BB"            Console.WriteLine(arr1[2]); // 輸出"CC"            Console.WriteLine(arr1[3]); // 輸出"DD"            Console.WriteLine();

            s
="AA--BB--CC--DD";
           
string[] arr2 = s.Replace("--", "-").Split('-'); // 以字串進行分割的技巧:先把字串"--"替換為單個字元"-",然後以'-'字元對字串進行分割,返回字串陣列            Console.WriteLine(arr2[0]); // 輸出"AA"            Console.WriteLine(arr2[1]); // 輸出"BB"            Console.WriteLine(arr2[2]); // 輸出"CC"            Console.WriteLine(arr2[3]); // 輸出"DD"            Console.WriteLine();

           
//(11)格式化(靜態方法Format)            Console.WriteLine(string.Format("{0} + {1} = {2}", 1, 2, 1+2));
            Console.WriteLine(
string.Format("{0} / {1} = {2:0.000}", 1, 3, 1.00/3.00));
            Console.WriteLine(
string.Format("{0:yyyy年MM月dd日}", DateTime.Now));


           
//(12)連線成一個字串(靜態方法Concat、靜態方法Join和例項方法StringBuilder.Append)            s ="A,B,C,D";
           
string[] arr3 = s.Split(','); // arr = {"A","B","C","D"}
            Console.WriteLine(
string.Concat(arr3)); // 將一個字串陣列連線成一個字串,輸出"ABCD"
            Console.WriteLine(
string.Join(",", arr3)); // 以","作為分割符號將一個字串陣列連線成一個字串,輸出"A,B,C,D"
            StringBuilder sb
=new StringBuilder(); // 宣告一個字串構造器例項            sb.Append("A"); // 使用字串構造器連線字串能獲得更高的效能            sb.Append('B');
            Console.WriteLine(sb.ToString());
// 輸出"AB"
            Console.ReadKey();
        }

   轉至:http://www.cnblogs.com/junbird-nest/archive/2012/03/23/2413482.html