ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## **字符串类型** | 类型 | 描述 | | --- | --- | | string| 2字节,使用双引号包裹 | 字符串(String)类型是 System.String 类的别名。它是从对象(Object)类型派生的 ~~~ String name= "dash"; ~~~ 可以在字符串前加@,将转义符`\`当做普通字符串 ~~~ string str = @"<script type=""text/javascript""> <!-- --> </script>"; ~~~ ## **连接多个字符串(+)** ``` string s1="hello" string s2="world"; string s=s1+" "+s2; ``` ## **比较字符串:** ``` string s1="hello"; string s2="hello"; Console.WriteLine((s1==s2));//false Console.WriteLine(String.Compare(s1,s2,true));//0 最后参数为true则忽略大小写 相等返回0 s1>s2返回1 s1<s2返回-1 Console.WriteLine(s1.CompareTo(s2));// 相等返回0 s1>s2返回1 s1<s2返回-1 Console.WriteLine(s1.Equals(s2));//false Console.WriteLine(String.Equals(s1,s2));//false ``` ## **格式化字符串** ``` string s1="hello"; string s2="world"; String.Format("第一个占位符输出内容为:{0},第二个占位符输出内容为:{1}",s1,s2); ``` ## **截取字符串** ``` //Substring(start,len) string s1="ABCDE"; string s=s1.Substring(1,3);//"BCD" ``` ## **分割字符串** ``` //Split(params char[] separator) string s5= "@南国的^艳阳,北国的#雪$"; char[] separator = { '@', '^', ',', '#', '$' }; //申明一个char类型的数组并赋值 String[] splitstring = new String[100];//申明一个字符串数组 splitstring = s5.Split(separator); for (int i=0; i < splitstring.Length; i++) { Console.WriteLine("组{0}:{1}",i,splitstring[i]); } 结果: 组0: 组1:南国的 组2:艳阳 组3:北国的 组4:雪 组5: ``` ## **字符插入** ``` //Insert(startIndex, value ) string s6="亲爱的,我爱你"; string s7=s6.Insert(3,"小美女"); Console.WriteLine(s7); ``` ## **字符填充** ``` //PadLeft("填充后的字符串总长度",'填充的字符') string s8 = "ABC"; string s9=s8.PadLeft(5,'_');//向左填充第二个参数是cahr类型的不能呢用" string s10 = s8.PadRight(5,'!'); Console.WriteLine(s9);//__ABC Console.WriteLine(s10);//ABC!! ``` ## **删除字符** ``` //Remove(startindex, [del_count]) string s11 = "ABCD1234"; string s12 = s11.Remove(4);//ABCD string s13 = s11.Remove(4, 2);//ABCD34 ``` ## **字符串复制** ``` //克隆 string s14 = "abc"; string s15; s15 = String.Copy(s14); Console.WriteLine(s15);//abc //部分复制 //s15.CopyTo(字符串复制的起始位置,要复制到的目标字符数组,指定目标字符数组存放的起始位置,指定复制的字符个数) string s16 = "0123456789"; char[] charArr = new char[100]; s16.CopyTo(2, charArr, 0, 4); Console.WriteLine(charArr);//2345 ``` ## **字符串替换** ``` string s17 = "亲爱的大美女,我爱你"; string s18 = s17.Replace("大美女", "小帅哥");//亲爱的小帅哥,我爱你 Console.WriteLine(s18); string s19 = s17.Replace(",", "!"); Console.WriteLine(s19);//亲爱的大美女!我爱你 ``` ## **可变字符类** ``` using System; using System.Text; namespace ConsoleApp1 { class Program { public static void Main(string[] args) { // 实例化前需要引入命名空间 using System.Text; StringBuilder Str = new StringBuilder("用一生下载你", 100); //追加到末尾 Append(append_value) Str.Append(",网盘资源"); Console.WriteLine(Str);//用一生下载你,网盘资源 int num = 1000; //按照指定格式追加到末尾 Str.AppendFormat("{0:C}", num); Console.WriteLine(Str);//用一生下载你,网盘资源¥1,000.00 //追加到开头 Insert(start_index, append_value) Str.Insert(0, "我"); Str.Insert(8, "百度"); Console.WriteLine(Str);//我用一生下载你,百度网盘资源¥1,000.00 //删除Remove(start_index,count) Str.Remove(6, 1);//删除索引6以后的1个字符 将1改为Str.Length-5 则删除索引6以后的全部字符 Console.WriteLine(Str);//我用一生下载,百度网盘资源¥1,000.00 //替换Replace("需要替换的字符串","将被替换上去的字符串") Str.Replace(",", "--"); Console.WriteLine(Str);//我用一生下载--百度网盘资源¥1--000.00 Console.ReadLine(); } } } ```