1、string类型变量可以看作是char变量的只读数组,使用下面的语法访问每个字符:
string myString = "A string";
char myChar = myString[1];
2、使用了数组变量的ToCharArray()命令给各个字符赋值,获得一个可写的char 数组。
string myString = "A string";
char[] myChars = myString.ToCharArray();
foreach (char character in myChars)
{
Console.Write("{0}", character);
}
Console.ReadKey();
3、使用 <string>.Length 获取元素的个数,这将给出字符串中字符数
string myString = Console.ReadLine();
Console.Write("You typed {0} characters.", myString.Length);
Console.ReadKey();
4、<string>.ToLower()和<string>.ToUpper(),它们可以分别把字符串转换为大写或小写形式。
<string>.Trim(char[])命令:删除输入字符串中的空格、其他字符
<string>.TrimStart()和<string>.TrimEnd()命令:把字符串的前面或后面的空格删掉。这些命令也需要指定char 数组。
<string>.PadLeft(<desiredLength>)和<string>.PadRight(<desiredLength>):可以在字符串的左边或右边添加空格,使字符串达到指定的长度。
<string>.Split(separator):把 string 转换为 string 数组,把它在指定的位置分隔开,这些位置采用 char数组的形式,常用的有空格char[] separator = {' '},逗号。
e.g.要检查用户的某个响应,例如字符串 yes。如果可以把用户输入的字符串转换为小写形式,就也能检查字符串 YES、Yes、yeS 等。
------字符串处理实例:
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace 字符串处理 8 { 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 //例1 14 //string myString = "A string"; 15 //char[] myChars = myString.ToCharArray(); 16 //foreach (char character in myChars) 17 //{ 18 // Console.Write("{0}", character); 19 //} 20 //Console.ReadKey(); 21 22 //例2 23 //string myString = Console.ReadLine(); 24 //Console.Write("You typed {0} characters.", myString.Length); 25 26 //例3 27 //string myString = "This is a test."; 28 //char[] separator = {' '}; 29 //string[] myWords; 30 //myWords = myString.Split(separator); //得到的每个单词没有空格,单词的内部和两端都没有空格。在使用Split()时,删除了分隔符。 31 //foreach (string word in myWords) 32 //{ 33 // Console.Write("{0}", word); 34 //} 35 36 //例4 37 //Console.Write("请输入一行字符串:"); 38 //string myString = Console.ReadLine(); 39 // char[] myChars = myString.ToCharArray(); 40 //Console.Write("\n反序输出字符串:"); 41 //for (int i = myString.Length-1; i >= 0; i--) 42 //{ 43 //Console.Write(myChars[i]); 44 //} 45 // Console.ReadKey(); 46 47 48 //练习5:将一个字符串数组的元素的顺序进行反转。{“3”,“a”,“8”,“haha”} 49 //{“haha”,“8”,“a”,“3”}。第i个和第length-i-1个进行交换。 50 51 string[] a ={ "3", "a", "8", "haha","zhou" }; 52 string temp; //引入一个局部变量用于交换,不然值会覆盖 53 for (int i = 0; i < a.Length; i++) 54 { 55 Console.WriteLine("第{0}个字符串为{1}:", i + 1, a[i]); 56 } 57 for (int i = 0; i < a.Length/2; i++) 58 { 59 temp = a[i]; 60 a[i] = a[a.Length - i -1]; //n个元素进行交换,交换n/2次;在一个循环中第i个元素与第length-i-1个元素 61 a[a.Length - i - 1] = temp; 62 } 63 for (int i = 0; i < a.Length; i++) 64 { 65 Console.WriteLine("新数组第{0}个元素{1}:", i + 1, a[i]); 66 } 67 Console.ReadKey(); 68 69 } 70 } 71 } 72