截取字符串常用方法:IndexOf、LastIndexOf、Substring
String.IndexOf用法
报告指定字符在此实例中的第一个匹配项的索引。搜索从指定字符位置开始,并检查指定数量的字符位置。
示例
string str = "奋斗是这么个过程,当时不觉累,事后不会悔。走一段再回头,会发现一个更强的自己,宛如新生";
string str1 = str.IndexOf("过程").ToString();
Console.WriteLine(str1);
string str2 = str.IndexOf("累").ToString();
Console.WriteLine(str2);
string str3 = str.IndexOf("不悔", 10).ToString();
Console.WriteLine(str3);
string str4 = str.IndexOf("强", 30, 5).ToString();
Console.WriteLine(str4);
string str5 = str.IndexOf("不", 15, 20).ToString();
Console.WriteLine(str5);
String.LastIndexOf用法
报告指定的 Unicode 字符或 String 在此实例中的最后一个匹配项的索引位置。
示例
string str = "奋斗是这么个过程,当时不觉累,事后不会悔。走一段再回头,会发现一个更强的自己,宛如新生";
string str6 = str.LastIndexOf("强").ToString();
Console.WriteLine("str6:" + str6);
string str7 = str.LastIndexOf("更强").ToString();
Console.WriteLine("str7:" + str7);
//从右往左截字符串,截取到下标为25,在到截取25为字符串里面寻找“悔”
string str8 = str.LastIndexOf("悔", 25).ToString();
Console.WriteLine("str8:" + str8);
string str9 = str.LastIndexOf("事", 33).ToString();
Console.WriteLine("str9:" + str9);
String.Substring用法
从此实例检索子字符串。
示例
string str = "奋斗是这么个过程,当时不觉累,事后不会悔。走一段再回头,会发现一个更强的自己,宛如新生";
string str10 = str.Substring(11);
Console.WriteLine("str10:" + str10);
string str11 = str.Substring(11, 5);
Console.WriteLine("str11:" + str11);
1)Substring、LastIndexOf一起使用
string str = "奋斗是这么个过程,当时不觉累,事后不会悔。走一段再回头,会发现一个更强的自己,宛如新生";
string str12 = str.Substring(str.IndexOf("不", 8, 22), 10).ToString();
Console.WriteLine("str12:" + str12);
总结
1.IndexOf、LastIndexOf都是返回一个位置,是个整数值;找不到都返回-1;
2.IndexOf是从左向右查,LastIndexOf是从右向左查,不管是IndexOf还是LastIndexOf,索引序列都是从左到右的(起始值是0)
4.Substring是字符串截取,返回值是一个截取后的字符串。