class Program { static void Main(string[] args) { string str = "Hello World!"; int i = 4; //Substring()在C#中有兩個重載函數 Console.WriteLine("------------------Substring()兩種截取--------------"); /* *1、Substring(int strstIndex) * * 傳的參數必須大於等於0 且小於等於字符串的長度 * 如果參數大於字符串的長度的話則系統會拋出ArgumentOutOfRange異常。提示:"startIndex 不能大於字符串長度。參數名: startIndex" * 如果參數小於0的話則系統會拋出ArgumentOutOfRange異常。提示:"StartIndex 不能小於 0。參數名: startIndex" * 如果傳的值正確的話,則就會以這個位置為起始,截取剩下所有的字符串 */ string str1 = str.Substring(1); /* *2、Substring(int strstIndex,int length) * * 傳的strstIndex參數必須大於等於0 且小於等於字符串的長度 * 如果strstIndex參數大於字符串的長度的話則系統會拋出ArgumentOutOfRange異常。提示:"startIndex 不能大於字符串長度。參數名: startIndex" * 如果strstIndex參數小於0的話則系統會拋出ArgumentOutOfRange異常。提示:"StartIndex 不能小於 0。參數名: startIndex" * 傳的length參數必須大於等於0 且小於等於 “字符串的長度-起始位置” * 如果length參數大於“字符串的長度-起始位置”的話則系統會拋出ArgumentOutOfRange異常。提示:"索引和長度必須引用該字符串內的位置。參數名: length" * 如果length參數小於0的話則系統會拋出ArgumentOutOfRange異常。提示:"長度不能小於 0。參數名: length" */ string str2 = str.Substring(1, 4); Console.WriteLine(str1); Console.WriteLine(str2); Console.WriteLine("------------------常用的字符串截取--------------"); //1、截取字符串的前i個字段 string str3 = str.Substring(0, i); string str4 = str.Remove(i,str.Length - i); //2、去掉字符串的前i個字段 string str5 = str.Remove(0, i); string str6 = str.Substring(i); //3、從右邊開始取i個字符 string str7 = str.Substring(str.Length - i); string str8 = str.Remove(0, str.Length - i); //4、從右邊開始去掉i個字符: string str9 = str.Substring(0,str.Length - i); string str10 = str.Remove(str.Length - i); Console.WriteLine(str3); Console.WriteLine(str4); Console.WriteLine(); Console.WriteLine(str5); Console.WriteLine(str6); Console.WriteLine(); Console.WriteLine(str7); Console.WriteLine(str8); Console.WriteLine(); Console.WriteLine(str9); Console.WriteLine(str10); Console.WriteLine(); Console.ReadLine(); } }
運行結果:
------------------Substring()兩種截取-------------- ello World! ello ------------------常用的字符串截取-------------- Hell Hell o World! o World! rld! rld! Hello Wo Hello Wo
