看c#视频的时候,有一个小文件夹是专门来讲字符串的,涉及到了字符串的多种操作,今天呢,小编带着大家一起来复习一下这些操作,大家可以看一下自己掌握了多少哦!
1.字符串变成字符串数组,改对应下标的值,再生成新的字符串
string text = "哈哈,老王又帅了";
char[] chs = text.ToCharArray(); //变成字符数组
chs[5] = '很'; //改值
text = new string(chs);//变成新的字符串
这样输出text的话,显示出来的就是“哈哈,老王很帅了”。需要注意的是字符串有一个特性:不可变性。尽管给之前的字符串进行改值了,但是原先的字符串并没有变,只是又生成了一个新的字符串。
2.字符串变小写,变大写,忽略大小写的比较
str1 = str1.ToLower(); //把字符串转化成小写的
str1 = str1.ToUpper(); //把字符串转化为大写的
bool result = str1.Equals(str2, StringComparison.OrdinalIgnoreCase); //忽略大小写,删除空白项
3.一切类型都可以调用.ToString()方法转换成字符串类型
int num = 10;
string s = num.ToString();
Console.WriteLine(s);
Console.ReadKey();
4.移除字符串中不想要的内容
string str = "哈 哈------,我 真-------的 好 聪 明 呢";
char[] chs = new char[] { ' ', '-' }; //清空 空格,-
string[] result = str.Split(chs, StringSplitOptions.RemoveEmptyEntries); //已经把不想要的切掉了,并且删除了空白项
for (int i = 0; i < result.Length; i++)
{
Console.Write(result[i]); //使用writeline的时候会换行
}
Console.ReadKey();
5.替换字符串中的子字符串
string name = "靖凡很邪恶";
name = name.Replace("靖凡", "王靖凡"); //替换字符串内容的方法
6.判断字符串中是否包含子字符串
string name = "靖凡真邪恶!";
bool result = name.Contains("邪恶"); //判断字符串中是否包含子字符串
7.从某个位置通过索引截取字符串
string str = "哈哈,靖凡哥哥又变帅了!";
str = str.Substring(3); //从索引为3的地方截取字符串
str = str.Substring(3, 3); //从索引为3的地方截取长度为3的字符串
需要注意的是:截取的索引和截取的长度必须包含在字符串长度之内。
8.字符串是否是以某个字符串开始,结束
string str = "靖凡哥哥真帅啊";
bool result = str.StartsWith("靖凡哥哥"); //判断字符串是否以某个字符开始的
bool result = str.EndsWith("啊"); //判断字符串是否以某个字符结束的
9.找字符串的索引
string str = "小杨很纯洁,哈哈,果然很帅!";
int index = str.IndexOf("哈"); //如果这个字符串在这个字符串中,那么就会把这个字符串的索引显示出来,如果找不到这个字符串,那么返回的结果是-1
string str = "abcdefgabcsabxdmsa";
int index = str.IndexOf("a", 8); //找一个字符串,从某个索引开始找,找到了就返回索引,找不到就返回-1
string str = "哈哈,真的好帅啊!啊啊啊啊啊--啊啊啊啊啊啊-啊啊啊啊--啊啊啊啊啊啊啊啊-";
int index = str.LastIndexOf("啊"); //找最后一个该字符串的索引
Console.WriteLine(index);
Console.ReadKey();
10.插入字符串
string st = "哈哈,我变美了";
st = st.Insert(4, "又"); //在第几个索引为 插入 的 字符串
11.Join,分隔符
string[] names = { "诸葛亮", "老苏", "卡卡西", "卡哇伊", "鸟叔" };
string st = string.Join("|", names); //Join方法,使用指定的分隔符
12.移除字符串
string text = "老苏果然很邪恶";
text = text.Remove(2, 3); //从某个地方开始移除,移除几个
13.切前后空格
name = name.Trim(); //前后空格都去掉
14.StringBuilder
String在进行运算的时候会产生一个新的实例,而StringBuilder则不会。所以在大量字符串拼接或频繁对某一字符串进行操作时最好使用StringBuilder。
这基本上是字符串这块的内容了,有什么补充和建议欢迎联系哦!