using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text;
namespace Example3_1
{
class Program
{
static void Main(string[] args)
{
//字符串的创建与表示方式
string str1 = "ab张三 cd";
char c = str1[3];
int i = str1.Length;
Console.WriteLine("{0},{1}", c, i);
//字符串比较
string str2 = "ab张三 cd";
int n = string.Compare(str1, str2);
bool b = str1.Equals(str2);//字符串比较中“==”也代表字符串的值是否相同,而不是内容是否相同;
bool b1 = str1 == str2;
Console.WriteLine("{0},{1},{2}", n, b, b1);
//字符串查找
//contains方法
if (str1.Contains("ab"))
{
Console.WriteLine("YES! Contains!");
}
//indexof ,indexof ( string s,int startindex) 和 Lastindexof
int x = str1.IndexOf("张");
int y = str1.LastIndexOf("张", 1);
int z = str1.IndexOf("张", 3);
Console.WriteLine("{0},{1},{2}", x, y, z);
//Indexofany 用于查找字符串中是否包含 某些 字符
char[] ch = { 'c', 'b', '张' };
int a = str1.IndexOfAny(ch);//返回值为在字符串实例中第一个匹配项(与数组中字符的顺序无关)从零开始的索引;
Console.WriteLine(a);
//求字符串中从某个位置开始的子字符串 Substring
string str3 = str1.Substring(2);
string str4 = str1.Substring(2, 2);
Console.WriteLine("{0},{1}", str3, str4);
//字符串插入、 删除、 替换
str1 = str1.Insert(0, "ac");
str2 = str2.Remove(2, 2);
Console.WriteLine("{0},{1}", str1, str2);
str1 = "ab张三 cd";
str1 = str1.Replace('c', 'a');
Console.WriteLine(str1);
str1 = str1.Replace("a", "c");
Console.WriteLine(str1);
Console.WriteLine();
//移除收尾制定的字符 Trim、TrimStrat、TrimEnd
string str5 = "北a京北a奥a运会北a京";
string str6 = "北a京北a奥a运会北a京";
char[] ch2 = { '北', '京' };
string str7 = str5.Trim(ch2);//只有从字符串首或尾开始连续找到数组中的字符时,才能连续删除;一旦有中断就停止删除
string str8 = str6.TrimEnd(ch2);
Console.WriteLine("{0},{1}", str7, str8);
//字符串的合并 Join、拆分 Split
string[] str9 = { "ab", "cd", "ef", "gh" };
string str10 = string.Join(",", str9);
Console.WriteLine(str10);
string[] str11 = str10.Split(',');
for (int j = 0; j < str11.Length; j++)//输出方法1
{
Console.WriteLine(str11[j]);
}
Console.WriteLine(string.Join(Environment.NewLine, str11));//输出方法2;environment.newline:添加换行符
//大小写转换 toupper、tolower
string str12 = "abc";
str12 = str12.ToUpper();
Console.WriteLine(str12);
str12 = str12.ToLower();
Console.WriteLine(str12);
//StringBuilder类的应用
StringBuilder sb = new StringBuilder();//stringbuilder不创建新对象,string在进行连接时要创建新对象,浪费内存
sb.Append("string1");
sb.AppendLine("string2");
sb.Append("string3");
Console.WriteLine(sb);
Console.Read();
}
}
}