C#字符串处理学习笔记

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      
原文地址:https://www.cnblogs.com/zyf2014/p/5427720.html