// Replace();方法 返回一个string类型的值 用于将字符转换为另一个字符 过滤关键字
//string str = "ABCDEFG";
//// str.Replace("A", "G"); //前边的是需要过滤的代码 后边的是新的代码 返回一个string类型的值
//str = str.Replace('A', 'V');
//Console.WriteLine(str); //输出的时候,前边的A自动就会变成V
//Console.ReadKey();
//例如
//string str = "Henry很帅";
//str = str.Replace('很', '太');
//Console.WriteLine(str); //输出就是henry太帅
//Console.ReadKey();
//Substring这个方法 有两个重载 返回一个string类型的值 第一个方法
//string str = "ABCDEFG";
//str= str.Substring(3); //写一个数字,从这个数字开始进行截取,往前的都被截取掉,只保留后边的,
//Console.WriteLine(str); //所以,输出就是DEFG
//Console.ReadKey();
//第二个方法
//string str = "ABCDEFG";
//str = str.Substring(3, 1); //前边的是需要截取的位置,后边的是截取长度,截取多长后边就可以写多长
//Console.WriteLine(str); //这样输出 就只有一个D 从第三个开始截取 不包括第三个
//Console.ReadKey();
//Contains()方法 检查字符串当中是否包含了所需要的字符 返回一个bool类型的值
//string str = "ABDEFG";
//bool result = str.Contains("E"); //检查字符串当中是否包含了此关键字
//Console.WriteLine(result); //因为包含 所以返回一个true
//Console.ReadKey();
//StartsWith();方法 检查该字符串是否以所指引的字符串开头 返回一个bool类型的值
//string str = "ABCDEFG";
//bool result = str.StartsWith("A"); //检查该字符串是否以A开头
//Console.WriteLine(result); //因为是以A开头 所以 返回的值是true
//Console.ReadKey();
//EndsWith() 这个方法 检测是否是以该字符进行结尾返回一个bool类型的值
//string str = "ABCDEFG";
//bool result = str.EndsWith("G"); //检测是否以G进行结尾
//Console.WriteLine(result); //返回一个true
//Console.ReadKey();
//IndexOf() 方法 可以找出字符串当中某个元素的下标位置 返回一个int类型的值 两个重载
//string str = "ABCDEFGABCDEFGABCDEFG";
//int number = str.IndexOf('B'); //找出第一个B所在的位置
//Console.WriteLine(number); //输出的是下标 而不是所在的位置 所以是1 下标从0开始索引
//Console.ReadKey();
//第二个重载 可以以指定位置的字符为起点找到下一个字符所在的下标
// string str = "ABCDEFGABCDEFGABCDEFG";
//int number= str.IndexOf('B', 0); //后边的也是下标 但是 如果要以第一个为起点找的话应该是从第一个下标的后一个下标开始也就是2
//Console.WriteLine(number); //否则找出来的 还是第一个下标
//int number= str.IndexOf('B', 2); //这样 输出的结果是8
//Console.WriteLine(number);
//Console.ReadKey();
//Remove 删除所需长度的字符串 返回一个string类型的字符串两个重载
//string str = "ABCDEFGABCDEFGABCDEFG";
//str= str.Remove(2); //只保留两个字符 A B
//Console.WriteLine(str);
//Console.ReadKey();
// 第二个方法 删除第一个数字和第二个数字之间的所有的字符返回一个string类型的字符串
//string str = "ABCDEFGABCDEFG";
//str = str.Remove(4, 7); //第一个是保留数字之前的字符 第二个数字是删除和第一个数字之间的字符
//Console.WriteLine(str);
//Console.ReadKey();
之后做了一些练习
////接收用户输入的字符串,将其中的字符以与输入相反的顺序输出。"abc"→"cba"
//string str = "abcafafdaweqwa";
//char[] s = str.ToCharArray(); //先将字符串转换为一个char类型的数组
//for (int i = 0; i < s.Length/2; i++) //将char类型数组中的字符进行交换
//{
// char temp = s[i];
// s[i] = s[s.Length - 1 - i];
// s[s.Length - 1 - i] = temp;
//}
//str = new string(s); //将char类型字符串转换成字符串
//Console.WriteLine(str); //输出
//Console.ReadKey();
//string str = "asdfghjkl";
//char[] s = str.ToCharArray();
//for (int i = s.Length-1; i>=0; i--) //i的长度必须等于长度减一 与下标相等 第二个条件必须等于0,因为第一个元素下标是0
//{
// Console.Write(s[i]);
//}
//Console.ReadKey();
//接收用户输入的一句英文,将其中的单词以反序输出。"hello c sharp"→"sharp c hello"
//string str = "hello c sharp";
//string [] input= str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); //将字符串当中的空格去掉
////现在input当中存着三个元素 进行交换
//for (int i = 0; i < input.Length/2; i++)
//{
// string temp = input[i];
// input[i] = input[input.Length - 1 - i];
// input[input.Length - 1 - i] = temp;
//}
//for (int i = 0; i < input.Length; i++) //便利输出
//{
// Console.Write(input[i]+" ");
//}
//Console.ReadKey();
//string str = "hello c sharp";
//string [] input= str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);//去掉空格
//for (int i = input.Length-1; i >=0; i--)
//{
// Console.Write(input[i]+" ");
//}
//Console.ReadKey();
//从Email中提取出用户名和域名:abc@163.com。
//string mail = "abc@163.com";
//string[] str = mail.Split(new char[] { '@' }, StringSplitOptions.RemoveEmptyEntries); //以@字符为切割点,分割为两个字符串
//Console.WriteLine("用户名是{0},域名是{1}",str[0],str[1]);
//Console.ReadKey();
string mail = "abc@163.com";
int number= mail.IndexOf('@'); ///先找到@字符的下标
string name1= mail.Substring(0, number); //从0开始进行截取 到@所在的位置停止
string name2 = mail.Substring(number + 1); //@字符加一才是下一个字符,一直截取到最后停止 就是域名
Console.WriteLine(name1);
Console.WriteLine(name2);
Console.ReadKey();
//文本文件中存储了多个文章标题、作者,标题和作者之间用若干空格(数量不定)隔开,每行一个,标题有的长有的短,输出到控制台的时候最多标题长度10,如果超过10,则截取长度8的子串并且最后添加“...”,加一个竖线后输出作者的名字。
文档内容 文件名 book txt格式的记事本文件格式
c#从入门到精通 张三
精通SQL结构化查询语言详解 高守传
数据挖掘原理与应用 ZhaoHui
SQLServer2005基础教程 Robin
MySQL5权威指南 Michaael
//先引入命名空间 using System.IO;
//把文档放到Debug的文件夹当中
string[] str = File.ReadAllLines("book.txt", Encoding.Default);
//读取这个文档 文档名 防止乱码
//需要一个string类型数组进行接收
for (int i = 0; i < str.Length; i++) //在循环中去掉每个元素的空格
{
string[] str1 = str[i].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
//第一步 str[i]是字符串的第i个元素
//第二部去掉str[i]中的空格,调用方法 str[i].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
//每个元素都有两个字符串
//第三步 string类型数组进行接收
string str2 = (str1[0].Length > 10 ? str1[0].Substring(0, 8) + "``````" : str1[0]) + "|" + str1[1];
//经过截取之后,上边的的元素 已经没有了空格,从第一个元素开始安放 |
//如果第一个元素的长度大于10 str1[0].Length>10?
//则只保留从第一个到第八个位置的元素,后边加上````` str1[0].Substring(0,8)+"``````":
//否则(长度肯定小于10) 则加上| 并且加上第二个元素 str1[0] + "|" + str1[1];
//str1[0].Length > 10 ? str1[0].Substring(0, 8) + "``````" : str1[0] + "|" + str1[1];
//但是之前判断的都是第一个元素 所以加上括号 否则 长度超过10的加不上后边第二个元素
//(str1[0].Length > 10 ? str1[0].Substring(0, 8) + "``````" : str1[0]) + "|" + str1[1];
//一个string类型的字符串进行接收
Console.WriteLine(str2); //输出字符串
}
Console.ReadKey();
//让用户输入一句话,找出所有e的位置
string str = "qerqerqerqerqerqr";
int number = 0; //从下标为0的位置开始查找
while (number!=-1) //找到最后一个e的时候 当没有e时 会变为-1 这个时候 跳出循环
{
number= str.IndexOf('e', number); //查找e的位置 从下标为0的地方开始查找
//number进行接收 这样每次都会存储一个值
if (number!=-1) //当不等于-1的时候 也就是没有找到最后一个时候 都进入if语句
{
number++; //必须有这句话 否则 number会一直在第一个e的位置 进入死循环
Console.WriteLine(number); //最好在number++的下边 这样可以更加直观的看到所在的位置
}
else //当等于-1的时候 就证明已经查找完毕 跳出循环
{
break;
}
}
Console.ReadKey();
//让用户输入一句话,判断这句话中有没有邪恶,如果有邪恶就替换成这种形式然后输出,如:老牛很邪恶,输出后变成老牛很**;
string str = "老赵很善良,很纯真,有时带点小邪恶,猥琐的表情```";
str= str.Replace("邪恶", "****"); //replace方法是新的字符代替旧的字符
Console.WriteLine("您刚刚输入的是[ {0} ]",str);
Console.ReadKey();
//把{“诸葛亮”,”鸟叔”,”卡卡西”,”卡哇伊”}变成诸葛亮|鸟叔|卡卡西|卡哇伊,然后再把|切割掉
string[] str = { "诸葛亮", "鸟叔", "卡卡西", "卡哇伊" };
string str1 = "";
for (int i = 0; i < str.Length-1;i++) //最后一个元素会直接加上 | 所以 直接减1
{
str1 +=str[i]+"|";
}
str1 = str1 + str[str.Length - 1]; //在外边把最后一个元素加上去
Console.WriteLine(str1);
string [] str2= str1.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries); //去掉数组中的 | 符号
for (int i = 0; i < str2.Length; i++)
{
Console.WriteLine(str2[i]);
}
Console.ReadKey();